Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 方法在文本框文本更改时不触发_C#_Asp.net - Fatal编程技术网

C# 方法在文本框文本更改时不触发

C# 方法在文本框文本更改时不触发,c#,asp.net,C#,Asp.net,我有一个连接了calander扩展器的文本框: <asp:TextBox ID="customDateTo" runat="server" AutoPostBack="true" OnSelectionChanged="customDateFrom_SelectionChanged"></asp:TextBox> <ajaxToolkit:CalendarExtender ID="toCalendarExtender" TargetControlID="custom

我有一个连接了calander扩展器的文本框:

<asp:TextBox ID="customDateTo" runat="server" AutoPostBack="true" OnSelectionChanged="customDateFrom_SelectionChanged"></asp:TextBox>
<ajaxToolkit:CalendarExtender ID="toCalendarExtender" TargetControlID="customDateTo" runat="server"></ajaxToolkit:CalendarExtender>
当我更改文本时,确实会收到回发,但方法中没有任何内容正在执行。为什么会发生这种情况?我该如何解决它?

对于,我认为应该是这样

OnTextChanged="customDateFrom_SelectionChanged"
不是

你应该处理这件事

例如:

 <asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True" 
            ontextchanged="TextBox1_TextChanged">
参考:

我假设您想处理
TextBox
TextChanged
事件
SelectionChanged
是ASP.NET中不存在的winforms事件

<asp:TextBox ID="customDateTo" runat="server" 
   AutoPostBack="true" OnTextChanged="customDateFrom_TextChanged">
</asp:TextBox>

不触发事件的另一个原因是,如果在触发事件之前将
文本框
数据绑定(例如,在
页面加载
)。然后您应该选中
IsPostBack
if(!IsPostBack)DataBindTextBox()

文本更改是另一个事件
TextBox.TextChanged事件
,您正在显示关于选择更改的信息。。
 <asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True" 
            ontextchanged="TextBox1_TextChanged">
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
   Label1.Text = Server.HtmlEncode(TextBox1.Text);
}
<asp:TextBox ID="customDateTo" runat="server" 
   AutoPostBack="true" OnTextChanged="customDateFrom_TextChanged">
</asp:TextBox>
protected void customDateFrom_TextChanged(object sender, EventArgs e)
{
    System.Diagnostics.Debug.WriteLine("Do Something");
}