private void myDataGrid_DeleteCommand(object source,System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
???????(如何写)}
各位朋友给指点一下。

解决方案 »

  1.   

    对 DataGrid 控件中的某个项单击 Delete 按钮时会引发 DeleteCommand 事件。用于 DeleteCommand 事件的典型事件处理程序会从数据源中移除选定项,然后将数据重新绑定到 DataGrid 控件。<asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 122px; POSITION: absolute; TOP: 115px" runat="server" Width="476px" Height="236px" ShowFooter="True" AutoGenerateColumns="False" BackColor="WhiteSmoke" BorderColor="SteelBlue" AllowPaging="True" PageSize="5" AllowSorting="True" DataKeyField="姓名">
    <Columns>
    <asp:ButtonColumn HeaderStyle-BackColor="silver" ItemStyle-BackColor="silver" FooterStyle-BackColor="silver" Text="删除" ButtonType="PushButton" CommandName="PushButton"></asp:ButtonColumn>
    <asp:BoundColumn DataField="姓名" ReadOnly="True" HeaderText="姓名" SortExpression="姓名">
    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" BackColor="Silver"></HeaderStyle>
    <FooterStyle VerticalAlign="Middle" BackColor="Silver"></FooterStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="部门" HeaderText="部门" SortExpression="部门">
    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" BackColor="Silver"></HeaderStyle>
    <FooterStyle VerticalAlign="Middle" BackColor="Silver"></FooterStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="职务" HeaderText="职务" SortExpression="职务">
    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" BackColor="Silver"></HeaderStyle>
    <FooterStyle VerticalAlign="Middle" BackColor="Silver"></FooterStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="薪资" HeaderText="薪资" SortExpression="薪资">
    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" BackColor="Silver"></HeaderStyle>
    <FooterStyle VerticalAlign="Middle" BackColor="Silver"></FooterStyle>
    </asp:BoundColumn>
    </Columns>
    <PagerStyle NextPageText="下一页" PrevPageText="上一页"></PagerStyle>
    </asp:datagrid>事件如下:
        Private Sub DataGrid1_DeleteCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.DeleteCommand
            Dim LvStrConn As String = "Server=zgy;Database=ASPExample;UID=sa;PWD=;"
            Dim LvObjConn As SqlConnection = New SqlConnection(LvStrConn)
            Dim LvStrDelete As String = "delete from Salary where 姓名=@name"
            Dim LvObjCommand As SqlCommand = New SqlCommand(LvStrDelete, LvObjConn)
            LvObjCommand.Parameters.Add(New SqlParameter("@name", SqlDbType.Char, 10))
            Dim LvName As String
            LvName = Trim(Me.DataGrid1.DataKeys(CInt(e.Item.ItemIndex)))
            LvObjCommand.Parameters("@name").Value = LvName
            LvObjCommand.CommandText = LvStrDelete
            Response.Write(LvStrDelete)
            Response.Write(LvName)
            LvObjConn.Open()
            LvObjCommand.ExecuteNonQuery()
            LvObjConn.Close()
            RwBindData(MvStrSortField)
        End Sub
      

  2.   

    就是说你要读出来你要删的那行的主键值,然后用这个主键值到数据库中去删
    引用一下二楼的.
    string  LvStrDelete  = "delete from Salary where 姓名=@name"string LvName = Trim(Me.DataGrid1.DataKeys(CInt(e.Item.ItemIndex)))