<asp:datagrid id=DataGrid1 runat="server" Width="100%" DataSource="<%# dsUserData %>" DataKeyField="ID" DataMember="Users" AutoGenerateColumns="False" PageSize="20" AllowPaging="True"> <Columns> <asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" CancelText="取消" EditText="编辑"></asp:EditCommandColumn> <asp:ButtonColumn Text="删除" CommandName="Delete"></asp:ButtonColumn> <asp:BoundColumn DataField="ID" SortExpression="ID" ReadOnly="True" HeaderText="ID"></asp:BoundColumn> <asp:BoundColumn DataField="UserName" SortExpression="UserName" HeaderText="用户名"></asp:BoundColumn> <asp:BoundColumn DataField="UserPassWord" SortExpression="UserPassWord" HeaderText="密码"></asp:BoundColumn> <asp:TemplateColumn HeaderText="Email"> <ItemTemplate> <asp:HyperLink id=HyperLink1 runat="server" NavigateUrl='<%# "mailto:" & DataBinder.Eval(Container, "DataItem.Email") %>' Text='<%# DataBinder.Eval(Container, "DataItem.Email") %>'> </asp:HyperLink> </ItemTemplate> <EditItemTemplate> <asp:TextBox id=TextBox1 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Email") %>'> </asp:TextBox> </EditItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn HeaderText="删除"> <ItemTemplate> <asp:CheckBox id=CheckBox1 runat="server" Checked='<%# DataBinder.Eval(Container, "DataItem.Deleted") %>'> </asp:CheckBox> </ItemTemplate> <EditItemTemplate> <asp:CheckBox id=CheckBox2 runat="server" Checked='<%# DataBinder.Eval(Container, "DataItem.Deleted") %>'> </asp:CheckBox> </EditItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn> <ItemTemplate> <asp:LinkButton id="LinkButton1" runat="server" Text="选择" CommandName="ShowAll" CausesValidation="false">详细</asp:LinkButton> </ItemTemplate> </asp:TemplateColumn> </Columns> <PagerStyle Position="TopAndBottom" Mode="NumericPages"></PagerStyle> </asp:datagrid> Private Sub DataGrid1_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.UpdateCommand Dim txtUserName As TextBox = CType(e.Item.Cells(3).Controls(0), TextBox) Dim txtPassWord As TextBox = CType(e.Item.Cells(4).Controls(0), TextBox) Dim txtEmail As TextBox = CType(e.Item.Cells(5).Controls(0), TextBox) Dim txtClass As TextBox = CType(e.Item.Cells(6).Controls(0), TextBox) Dim chkDelete As CheckBox = CType(e.Item.Cells(7).Controls(1), CheckBox) Dim r As UserData.UsersRow r = dsUserData.Users.FindByID(e.Item.ID) With r .UserName = txtUserName.Text .UserPassWord = txtPassWord.Text .Email = txtEmail.Text .Deleted = chkDelete.Checked End With With DataGrid1 .EditItemIndex = -1 .DataBind() End With End Sub Private Sub DataGrid1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.ItemCommand If e.CommandName = "ShowAll" Then FillTextBox(e.Item.Cells(2).Text) Panel_DataGrid.Visible = False Panel_Detail.Visible = True End If End Sub Private Sub DataGrid1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.EditCommand With DataGrid1 .EditItemIndex = e.Item.ItemIndex .DataBind() End With End Sub Private Sub DataGrid1_CancelCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.CancelCommand With DataGrid1 .EditItemIndex = -1 .DataBind() End With End Sub Private Sub DataGrid1_DeleteCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.DeleteCommand Dim key As String = CInt(e.Item.Cells(3).Text) Dim r As UserData.UsersRow r = dsUserData.Users.FindByID(key) r.Delete() With DataGrid1 .EditItemIndex = -1 .DataBind() End With End Sub
<Columns>
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>
<asp:ButtonColumn Text="删除" CommandName="Delete"></asp:ButtonColumn>
<asp:BoundColumn DataField="ID" SortExpression="ID" ReadOnly="True" HeaderText="ID"></asp:BoundColumn>
<asp:BoundColumn DataField="UserName" SortExpression="UserName" HeaderText="用户名"></asp:BoundColumn>
<asp:BoundColumn DataField="UserPassWord" SortExpression="UserPassWord" HeaderText="密码"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="Email">
<ItemTemplate>
<asp:HyperLink id=HyperLink1 runat="server" NavigateUrl='<%# "mailto:" & DataBinder.Eval(Container, "DataItem.Email") %>' Text='<%# DataBinder.Eval(Container, "DataItem.Email") %>'>
</asp:HyperLink>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id=TextBox1 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Email") %>'>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="删除">
<ItemTemplate>
<asp:CheckBox id=CheckBox1 runat="server" Checked='<%# DataBinder.Eval(Container, "DataItem.Deleted") %>'>
</asp:CheckBox>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox id=CheckBox2 runat="server" Checked='<%# DataBinder.Eval(Container, "DataItem.Deleted") %>'>
</asp:CheckBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:LinkButton id="LinkButton1" runat="server" Text="选择" CommandName="ShowAll" CausesValidation="false">详细</asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle Position="TopAndBottom" Mode="NumericPages"></PagerStyle>
</asp:datagrid> Private Sub DataGrid1_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.UpdateCommand
Dim txtUserName As TextBox = CType(e.Item.Cells(3).Controls(0), TextBox)
Dim txtPassWord As TextBox = CType(e.Item.Cells(4).Controls(0), TextBox)
Dim txtEmail As TextBox = CType(e.Item.Cells(5).Controls(0), TextBox)
Dim txtClass As TextBox = CType(e.Item.Cells(6).Controls(0), TextBox)
Dim chkDelete As CheckBox = CType(e.Item.Cells(7).Controls(1), CheckBox)
Dim r As UserData.UsersRow
r = dsUserData.Users.FindByID(e.Item.ID)
With r
.UserName = txtUserName.Text
.UserPassWord = txtPassWord.Text
.Email = txtEmail.Text
.Deleted = chkDelete.Checked
End With
With DataGrid1
.EditItemIndex = -1
.DataBind()
End With
End Sub Private Sub DataGrid1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.ItemCommand
If e.CommandName = "ShowAll" Then
FillTextBox(e.Item.Cells(2).Text)
Panel_DataGrid.Visible = False
Panel_Detail.Visible = True
End If
End Sub Private Sub DataGrid1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.EditCommand
With DataGrid1
.EditItemIndex = e.Item.ItemIndex
.DataBind()
End With
End Sub Private Sub DataGrid1_CancelCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.CancelCommand
With DataGrid1
.EditItemIndex = -1
.DataBind()
End With
End Sub Private Sub DataGrid1_DeleteCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.DeleteCommand
Dim key As String = CInt(e.Item.Cells(3).Text)
Dim r As UserData.UsersRow
r = dsUserData.Users.FindByID(key)
r.Delete()
With DataGrid1
.EditItemIndex = -1
.DataBind()
End With
End Sub