Динамическое текстовое поле внутри нажатия клавиши вкладки gridview - PullRequest
0 голосов
/ 16 ноября 2009

Мы используем динамическое текстовое поле внутри gridview. Когда клавиша табуляции нажата на каждом текстовом поле внутри сетки, нам нужно выполнить некоторые вычисления, используя общее значение из базы данных и значение в предыдущем текстовом поле, а результат должен отображаться в следующем текстовом поле.

С уважением Гита

1 Ответ

1 голос
/ 16 ноября 2009

Надеюсь, этот пример поможет вам в этом. В сетке задайте 2 столбца текстового поля в качестве столбцов шаблона, чтобы можно было определять события textbox id и OnTextChanged . Атрибут 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
...