C#中用TextChanged事件为什么没反应,我是用这个事件来验证文本框TextBox中用户名注册的唯一性

protectedvoidtxtName_TextChanged(objectsender,EventArgse){SqlConnectionCon=newSqlConn... protected void txtName_TextChanged(object sender, EventArgs e) { SqlConnection Con = new SqlConnection(ConfigurationManager.AppSettings["connectionString"]); Con.Open(); SqlCommand Com = new SqlCommand("select * from tbUser where UName='" + txtName.Text.Trim() + "'", Con); SqlDataReader dr = Com.ExecuteReader(); dr.Read(); if (dr.HasRows) 展开
 我来答
x_ialone
2013-02-22 · 超过11用户采纳过TA的回答
知道答主
回答量:21
采纳率:0%
帮助的人:32.3万
展开全部
以后要记住当你要启用TextChanged事件的时候要设置文本框的AutoPostBack=“true”。
AutoPostBack是属性。所有的控件默认为false。即值改变后不回传服务器。

---------------
<asp:TextBox ID="txtName" runat="server" AutoPostBack="True"
ontextchanged="txtName_TextChanged"></asp:TextBox>
夜翼落雪
2013-02-22 · 超过17用户采纳过TA的回答
知道答主
回答量:86
采纳率:100%
帮助的人:51.6万
展开全部
前台txtName设置AutoPostBack为true,这个事件需要请求后台的,你禁止了回发就不能请求后台,自然也就不执行代码。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
TomasRen
2013-02-21 · TA获得超过173个赞
知道小有建树答主
回答量:175
采纳率:100%
帮助的人:156万
展开全部
txtName这个控件是不是还没有绑定事件,在构造函数里加上txtName.TextChanged+=txtName_TextChanged;试试呢
更多追问追答
追问

有啊,在视图设计代码里有  ontextchanged="txtName_TextChanged"

 

追答
在SqlConnection Con = new SqlConnection(ConfigurationManager.AppSettings["connectionString"]);这里下断点,测试下是否停下来,如果没有说明没有触发事件,把代码拷贝一份,删除这个控件,重新建立,并且通过属性,绑定事件试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xdezlqz
2013-02-21 · TA获得超过153个赞
知道小有建树答主
回答量:263
采纳率:0%
帮助的人:197万
展开全部
这个事件是服务端事件,你难道要每改变一个字符都交服务器查询一次数据库啊
追问
那你有什么建议说呗
追答
我觉得应该在改变完后,失去焦点(或者回车确认)再发回数据库。这们对服务器压力会小点!
不过用户体验可能会没有每改变一个字符都查询的效果好!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Harold_areis
2013-02-21 · TA获得超过107个赞
知道小有建树答主
回答量:361
采纳率:0%
帮助的人:179万
展开全部
要是用input的textbox才可以
追问
input的文本框在它的属性窗口中没有事件绑定啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式