C# – TextBox TextChanged事件未触发
发布时间:2020-12-15 21:33:21 所属栏目:百科 来源:网络整理
导读:我正在开发一个正在工作的项目,由于某种原因,我的文本框的textchanged事件没有被触发.我试图在我的代码中设置一个断点,但他没有到达那里,所以他的事件并没有触发imo. FooterTemplate asp:TextBox ID="TextBoxSiteAlias" runat="server" AutoPostBack="true"
我正在开发一个正在工作的项目,由于某种原因,我的文本框的textchanged事件没有被触发.我试图在我的代码中设置一个断点,但他没有到达那里,所以他的事件并没有触发imo.
<FooterTemplate> <asp:TextBox ID="TextBoxSiteAlias" runat="server" AutoPostBack="true" OnTextChanged="TextBoxSiteAlias_TextChanged"></asp:TextBox> <ajaxToolkit:AutoCompleteExtender runat="server" id="AutoCompleteExtenderSiteAlias" targetcontrolid="TextBoxSiteAlias" servicemethod="GetSiteAliasList" minimumprefixlength="2" completioninterval="1000" enablecaching="true" completionsetcount="12" /> </FooterTemplate> 这是我的Gridview中的FooterTemplate. protected void TextBoxSiteAlias_TextChanged(object sender,EventArgs e) { string query = @"select distinct (isnull([site_address1],'') +isnull([site_address2],'') +isnull([site_address3],'') +isnull([site_address4],'') +isnull([site_address5],'') ) as 'Site_adresse',city,country,[site_id] as 'siteID' FROM [Henkel].[dbo].[tbl_Henkel_site_info_upload] WHERE site_id = '" + ((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteAlias")).Text + "'"; conn.Open(); SqlCommand cmd = new SqlCommand(query,conn); SqlDataReader myReader = cmd.ExecuteReader(); DataTable myTable = new DataTable(); myTable.Load(myReader); conn.Close(); if (myTable.Rows.Count > 0) { ((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteAddress")).Text = Convert.ToString(myTable.Rows[0]["Site_adresse"]); ((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteCity")).Text = Convert.ToString(myTable.Rows[0]["city"]); ((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteCountry")).Text = Convert.ToString(myTable.Rows[0]["country"]); ((TextBox)GridView1.FooterRow.FindControl("TextBoxIBSSiteID")).Text = Convert.ToString(myTable.Rows[0]["siteID"]); } else { ((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteAddress")).Text = ""; ((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteCity")).Text = ""; ((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteCountry")).Text = ""; ((TextBox)GridView1.FooterRow.FindControl("TextBoxIBSSiteID")).Text = ""; } } 这是在专用文本框失去焦点时应立即调用的函数. 我一直在许多论坛上寻找原因,但所有这些回复都表明文本框需要AutoPostBack属性(我的有). 小通知:我有相同的项目(具有所有相同的功能,我们公司的另一笔交易,在该项目中它工作正常.我已将项目代码复制到新项目并更改所有查询连接字符串) 希望有人可以帮助我吗? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |