ASP.NET TextBoxWatermarkExtender

时间:2010-08-31 11:13:47

标签: c# asp.net ajaxcontroltoolkit

我必须从我的textBox中添加一个来自ajax控件工具包的WatermarkExtender(它已经正常运行)。问题是,当我尝试从工具箱中提取TextBoxWatermarkExtender时,Visual Studio 2010不会让我这样做。

这是default.aspx的源代码

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>

    <script type="text/javascript">
        function pageLoad() { }
    </script>
    <style type="text/css">
    .watermark
    {
     color : Gray;
     background-color : #dddddd;
     font-size : smaller;
     font-style : italic;
    }
    </style>

</head>
<body>
    <form id="form1" runat="server">
    <div style="height: 89px">

    <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>

        <asp:TextBox ID="txtInput" runat="server" text="Enter Date" 
            AutoPostBack="True" ontextchanged="txtInput_TextChanged"></asp:TextBox>
        <asp:TextBox ID="txtEcho" runat="server" ReadOnly="True"></asp:TextBox>



        <br />



    </div>
    </form>
</body>
</html>

这是default.aspx.cs的代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void txtInput_TextChanged(object sender, EventArgs e)
    {
        txtEcho.Text = txtInput.Text;
    }
}

This is printScreen from visual studio.

2 个答案:

答案 0 :(得分:1)

我也有同样的问题;我的watermarkExtender在本地工作正常,但在部署服务器上不起作用。我已将最新的ajax dll放在服务器上的bin文件夹中,但它仍然无效。然后在我的web.config中添加几行代码后,它解决了我的问题...这是我的web.config。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.web>
    <httpRuntime requestValidationMode="2.0" />
    <compilation debug="true">
    </compilation>   
  </system.web>
</configuration>

答案 1 :(得分:0)

在web.config中

<pages>      
<controls>        
<add namespace="AjaxControlToolkit" assembly="AjaxControlToolkit" tagPrefix="ajt"/>
</controls>
</pages>

在页面的源视图中

<ajt:TextBoxWatermarkExtender id="extInput" runat="server" WatermarkText="required" WatermarkCssClass="watermarked" TargetControlID="txtInput"/>