页脚行网格VIew

时间:2014-07-31 16:09:11

标签: asp.net gridview templatefield

我在网格视图中有页脚行来添加新记录。在页脚中我有三列(名称,电话号码和地址。当用户输入电话号码时,需要提取相应的详细信息并将其绑定到页脚行中的其他项目

  <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" 
        ShowFooter="true" onrowdatabound="GridView1_RowDataBound">
    <Columns>
    <asp:TemplateField HeaderText="Name">
     <ItemTemplate>
      <asp:Label ID="lblName" runat="server" Text='<%# Eval("Name") %>'></asp:Label>
      </ItemTemplate>
       <FooterTemplate>
      <asp:TextBox ID="txtName" runat="server" ></asp:TextBox>
     </FooterTemplate>
     </asp:TemplateField>
    <asp:TemplateField HeaderText="Phone">
     <ItemTemplate>
      <asp:Label ID="lblPhone" runat="server" Text='<%# Eval("Phone") %>'></asp:Label>
      </ItemTemplate>
     <FooterTemplate>
      <asp:TextBox ID="txtPhone" runat="server"  ></asp:TextBox>
     </FooterTemplate>
     </asp:TemplateField>
    </Columns>
    </asp:GridView>

1 个答案:

答案 0 :(得分:0)

你可以尝试这样的事情......

ASP:

<asp:TemplateField HeaderText="Name">
   <ItemTemplate>
      <asp:Label ID="lblName" runat="server" Text='<%# Eval("Name") %>'</asp:Label>
   </ItemTemplate>
   <FooterTemplate>
      <asp:TextBox ID="txtName" runat="server" autopostback="true" OnTextChanged="txtName_TextChanged"></asp:TextBox> //added code here
   </FooterTemplate>
 </asp:TemplateField>

C#代码背后

protected void txtName_TextChanged(object sender, EventArgs e)
{
    //code here call back fields to other textboxes
}

这还没有经过测试但我之前使用过onTextChanged ..也许不是在网格中......你可能需要使用..

Textbox txtPhone = GridView1.FooterRow.FindControl("txtPhone");

在页脚中找到控件。找到控件后,您应该能够使用sqldataadapter或datareader填充文本框。

HOpe这会让你朝着正确的方向前进!

相关问题