【问题标题】:Dynamic textbox inside gridview tab key pressgridview选项卡按键内的动态文本框
【发布时间】:2009-11-16 11:51:09
【问题描述】:

我们在 gridview 中使用动态文本框。当在网格内的每个文本框上按下 tab 键时,我们需要使用数据库中的总值和上一个文本框中的值进行一些计算,结果应该显示在下一个文本框中。

问候 吉萨

【问题讨论】:

  • 您使用的是哪种语言/框架?

标签: c# asp.net dynamic controls


【解决方案1】:

希望这个示例能让您顺利上路。在网格中,将 2 个文本框列设置为模板列,以便您可以定义文本框 idOnTextChanged 事件。 AutoPostBack 属性也很重要,以便在用户退出时文本框会回发。在后面的代码中,您需要处理 OnTextChanged 事件并使用 FindControl 方法获取对文本框的引用。

标记:

    <asp:GridView ID="GridView1" runat="server">
        <Columns>
            <asp:TemplateField>
                <EditItemTemplate>
                    <asp:TextBox ID="TextBox1" runat="server" OnTextChanged="Texbox_Changed" AutoPostBack="true" ></asp:TextBox>
                </EditItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField>
                <EditItemTemplate>
                    <asp:TextBox ID="TextBox2" runat="server" ></asp:TextBox>
                </EditItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>

背后的代码:

Protected Sub Texbox_Changed(ByVal sender As Object, ByVal e As System.EventArgs)
    Dim Param As String = CType(sender, TextBox).Text
    Dim Result As String = Param 'TODO: perform calculation
    CType(GridView1.Rows(GridView1.EditIndex).FindControl("TextBox2"), TextBox).Text = Result
End Sub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多