避免双击gridview中的文本框 [英] Avoid double click on textbox in gridview

查看:78
本文介绍了避免双击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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆