(1)<asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 56px; POSITION: absolute; TOP: 56px" runat="server" BorderColor="#CC9966" BorderStyle="None" BorderWidth="1px" BackColor="White" CellPadding="4" ShowFooter="True" AutoGenerateColumns="False">
<SelectedItemStyle Font-Bold="True" ForeColor="#663399" BackColor="#FFCC66"></SelectedItemStyle>
<ItemStyle ForeColor="#330099" BackColor="White"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="#FFFFCC" BackColor="#990000"></HeaderStyle>
<FooterStyle ForeColor="#330099" BackColor="#FFFFCC"></FooterStyle>
<Columns>
<asp:TemplateColumn HeaderText="Employee ID">
<ItemTemplate>
<asp:Label id=Label3 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.id") %>'>
</asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:LinkButton id="LinkButton1" runat="server" CommandName="Insert">Insert</asp:LinkButton>
</FooterTemplate>
<EditItemTemplate>
<asp:TextBox id=TextBox5 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.id") %>'>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="Last Name">
<ItemTemplate>
<asp:Label id=Label1 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.usercode") %>'>
</asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox id="TextBox2" runat="server">1221</asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox2" ErrorMessage="*"></asp:RequiredFieldValidator>
</FooterTemplate>
<EditItemTemplate>
<asp:TextBox id="TextBox1" runat="server"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="First Name">
<ItemTemplate>
<asp:Label id=Label2 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.pwd") %>'>
</asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox id="TextBox4" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator2" runat="server" ControlToValidate="TextBox4" ErrorMessage="*"></asp:RequiredFieldValidator>
</FooterTemplate>
<EditItemTemplate>
<asp:TextBox id="TextBox3" runat="server"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="name">
<ItemTemplate>
<asp:Label id=Label4 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.username") %>'>
</asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox id="TextBox6" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator3" runat="server" ErrorMessage="*" ControlToValidate="TextBox6"></asp:RequiredFieldValidator>
</FooterTemplate>
<EditItemTemplate>
<asp:TextBox id="TextBox7" runat="server"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:HyperLinkColumn Text="xxxxxxxxxx" DataNavigateUrlField="usercode" DataNavigateUrlFormatString="javascript:window.open('page.aspx','new','fullscreen=0,toolbar=1,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=1,width=133,height=110,top=0,left=0') return faLse;window.opener=null;"></asp:HyperLinkColumn>
</Columns>
<PagerStyle HorizontalAlign="Center" ForeColor="#330099" BackColor="#FFFFCC"></PagerStyle>
</asp:datagrid>
===================================================
 If e.CommandName = "Insert" Then            Dim t1 As TextBox = e.Item.FindControl("textbox2")
            Dim t2 As TextBox = e.Item.FindControl("textbox4")
            Dim t3 As TextBox = e.Item.FindControl("TextBox6")
                     cnn.Open()
            Dim cmd As New OleDbCommand("insert into log (usercode,pwd,username) values('" & t1.Text & "','" & t2.Text & "','" & t3.Text & "' )", cnn)
            cmd.ExecuteNonQuery()
            cnn.Close()
            BindGrid()

解决方案 »

  1.   

    (1)
    ds.Tables[0].Rows.Add(ds.Tables[0].NewRow());
    ds.AcceptChanges();
    BindGrid(ds);
    (2)
    add some event declaration in this itemtemplate column. for example:
    <asp:LinkButton id="lnk1" onClick="lnkClick" ... />
    then in code-behind
    private void lnkClick(object sender,System.EventArgs e)
    {
    LinkButton lnkbtn=(LinkButton)sender;
    DataGridItem item=(DataGridItem)lnkbtn.Parent.Parent;
    string val=item.Cells[2].Text;
    BindGridB(val); //bind datagrid B according by some params.
    }