避免双击gridview中的文本框 [英] Avoid double click on textbox in gridview
本文介绍了避免双击gridview中的文本框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在gridview中有3列有文本框的长度,宽度和面积。当我输入长度然后我必须在文本框中单击两次以输入宽度,因为autopotback属性为true并且在textchange事件上计算区域。我已经尝试过更新面板但没有工作..有没有任何解决方案。
I have 3 columns in gridview having textboxes length, width and area. When i enter length then i have to click twice in textbox to enter width because autopotback property is true and calculating area on textchange event. i have tried with update panel but not working..is there any solution for this.
推荐答案
试试这样。!
Try like this.!
Aspx Page looks like below
<form id="form1" runat="server">
<asp:scriptmanager runat="server" xmlns:asp="#unknown">
</asp:scriptmanager>
<asp:updatepanel runat="server" xmlns:asp="#unknown">
<contenttemplate>
<asp:gridview id="grdResult" runat="server" autogeneratecolumns="false">
<columns>
<asp:templatefield headertext="Length">
<itemtemplate>
<asp:textbox id="TxtLength" runat="server" text="<%#Bind("Length") %>" ontextchanged="TxtLength_TextChanged">
AutoPostBack="true"></asp:textbox>
</itemtemplate>
</asp:templatefield>
<asp:templatefield headertext="Width">
<itemtemplate>
<asp:textbox id="TxtWidth" runat="server" text="<%#Bind("Width") %>" ontextchanged="TxtWidth_TextChanged">
AutoPostBack="true"></asp:textbox>
</itemtemplate>
</asp:templatefield>
<asp:templatefield headertext="Area">
<itemtemplate>
<asp:textbox id="TxtArea" runat="server" text="<%#Bind("Area") %>" ontextchanged="TxtArea_TextChanged">
AutoPostBack="true"></asp:textbox>
</itemtemplate>
</asp:templatefield>
</columns>
</asp:gridview>
</contenttemplate>
</asp:updatepanel>
</form>
code behind page looks like below
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.Add("Length", typeof(Double));
dt.Columns.Add("Width", typeof(Double));
dt.Columns.Add("Area", typeof(Double));
for (int i = 0; i < 10; i++)
{
DataRow dr = dt.NewRow();
dr["Length"] = 1;
dr["Width"] = 1;
dr["Area"] = 1;
dt.Rows.Add(dr);
}
grdResult.DataSource = dt;
grdResult.DataBind();
}
}
protected void TxtLength_TextChanged(object sender, EventArgs e)
{
}
protected void TxtWidth_TextChanged(object sender, EventArgs e)
{
}
protected void TxtArea_TextChanged(object sender, EventArgs e)
{
}
这篇关于避免双击gridview中的文本框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文