protected void BindGrid()
{
//绑定数据源 }
private void dataGridCat_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
dataGridCat.EditItemIndex=(int)e.Item.ItemIndex;
BindGrid();
}
private void dataGridCat_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(Page.IsValid)
{
//更新数据
dataGridCat.EditItemIndex=-1;
BindGrid();
}
}
private void dataGridCat_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
//删除数据
dataGridCat.EditItemIndex=-1;
BindGrid();
}
//新建记录
protected void Create_Click(object sender,EventArgs e)
{
//添加记录
BindGrid();
}
{
//绑定数据源 }
private void dataGridCat_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
dataGridCat.EditItemIndex=(int)e.Item.ItemIndex;
BindGrid();
}
private void dataGridCat_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(Page.IsValid)
{
//更新数据
dataGridCat.EditItemIndex=-1;
BindGrid();
}
}
private void dataGridCat_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
//删除数据
dataGridCat.EditItemIndex=-1;
BindGrid();
}
//新建记录
protected void Create_Click(object sender,EventArgs e)
{
//添加记录
BindGrid();
}
<%@ Page Language=VB Debug=true %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OLEDB" %>
<script runat=server>
Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)
If Not IsPostBack Then
BuildDataList
End If
End Sub
Sub Edit_Grid(sender As Object, e As DataGridCommandEventArgs)
dgEmps.EditItemIndex = e.Item.ItemIndex
BuildDataList
End SubSub Update_Grid(ByVal Sender as Object, ByVal E as DataGridCommandEventArgs)
Dim TheID as String
Dim LastName as String
Dim FirstName as String
TheID = E.Item.Cells(2).Text
LastName = CType(e.Item.Cells(0).Controls(0), TextBox).Text
FirstName = CType(e.Item.Cells(1).Controls(0), TextBox).Text
Dim DBConn as OleDbConnection
Dim DBUpdate As New OleDbCommand
DBConn = New OleDbConnection( _
"PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
& "DATA SOURCE=" _
& Server.MapPath("/tt/C4/DGDB.mdb;"))
DBUpdate.CommandText = "Update Employees " _
& "Set LastName = '" & LastName &"', " _
& "FirstName = '" & FirstName & "' " _
& "Where EmpID = " & TheID
DBUpdate.Connection = DBConn
DBUpdate.Connection.Open
DBUpdate.ExecuteNonQuery()
DBConn.Close
dgEmps.EditItemIndex = -1
BuildDataList
End Sub
Sub CommandAdd_Click(Sender As Object, E As CommandEventArgs)
Dim DBConn as OleDbConnection
Dim DBAdd As New OleDbCommand
DBConn = New OleDbConnection( _
"PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
& "DATA SOURCE=" _
& Server.MapPath("/tt/C4/DGDB.mdb;"))
DBAdd.CommandText = "Insert Into Employees (LastName) " _
& "values ('')"
DBAdd.Connection = DBConn
DBAdd.Connection.Open
DBAdd.ExecuteNonQuery()
DBConn.Close
dgEmps.EditItemIndex = 0
BuildDataList
End Sub
Sub BuildDataList ()
Dim DBConn as OleDbConnection
Dim DBCommand As OleDbDataAdapter
Dim DSPageData as New DataSet
DBConn = New OleDbConnection( _
"PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
& "DATA SOURCE=" _
& Server.MapPath("/tt/C4/DGDB.mdb;"))
DBCommand = New OleDbDataAdapter _
("Select * From Employees " _
& "Order By LastName, FirstName", DBConn)
DBCommand.Fill(DSPageData, _
"Employees")
dgEmps.DataSource = _
DSPageData.Tables("Employees").DefaultView
dgEmps.DataBind()
End Sub
</SCRIPT>
<HTML>
<HEAD>
<TITLE>Adding Rows to a DataGrid Control</TITLE>
</HEAD>
<Body LEFTMARGIN="40">
<form runat="server">
<BR><BR>
<asp:Label
id="lblMessage"
runat="server"
/>
<BR><BR>
<asp:datagrid
id="dgEmps"
runat="server"
autogeneratecolumns="false"
oneditcommand="Edit_Grid"
onupdatecommand="Update_Grid"
>
<columns>
<asp:boundcolumn
HeaderText="Last Name"
DataField="LastName"
/>
<asp:boundcolumn
HeaderText="First Name"
DataField="FirstName"
/>
<asp:boundcolumn
datafield="EmpID"
visible=False
readonly=true
/>
<asp:editcommandcolumn
edittext="Edit"
updatetext="Update"
itemstyle-wrap="false"
headertext="Edit"
headerStyle-wrap="false"
/>
</columns>
</asp:datagrid>
<BR><BR>
<asp:LinkButton
id="butAdd"
text="Add"
commandname="Add"
oncommand="CommandAdd_Click"
runat="server"
/>
</form>
</BODY>
</HTML>
<%@ Page Language=VB Debug=true %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OLEDB" %>
<script runat=server>
Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)
If Not IsPostBack Then
BuildDataList
End If
End Sub
Sub Click_Grid(ByVal Sender as Object, ByVal E as DataGridCommandEventArgs)
Dim TheID as String
TheID = E.Item.Cells(1).Text
Dim DBConn as OleDbConnection
Dim DBDelete As New OleDbCommand
DBConn = New OleDbConnection( _
"PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
& "DATA SOURCE=" _
& Server.MapPath("/tt/C4/DGDB.mdb;"))
DBDelete.CommandText = "Delete From Employees Where " _
& "EmpID = " & TheID
DBDelete.Connection = DBConn
DBDelete.Connection.Open
DBDelete.ExecuteNonQuery()
DBConn.Close
BuildDataList
End Sub
Sub BuildDataList ()
Dim DBConn as OleDbConnection
Dim DBCommand As OleDbDataAdapter
Dim DSPageData as New DataSet
DBConn = New OleDbConnection( _
"PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
& "DATA SOURCE=" _
& Server.MapPath("/tt/C4/DGDB.mdb;"))
DBCommand = New OleDbDataAdapter _
("Select LastName & ', ' & FirstName " _
& "as FullName, EmpID From Employees " _
& "Order By LastName, FirstName", DBConn)
DBCommand.Fill(DSPageData, _
"Employees")
dgEmps.DataSource = _
DSPageData.Tables("Employees").DefaultView
dgEmps.DataBind()
End Sub
</SCRIPT>
<HTML>
<HEAD>
<TITLE>Removing Rows from a DataGrid Control</TITLE>
</HEAD>
<Body LEFTMARGIN="40">
<form runat="server">
<BR><BR>
<asp:Label
id="lblMessage"
runat="server"
/>
<BR><BR>
<asp:datagrid
id="dgEmps"
runat="server"
autogeneratecolumns="false"
onitemcommand="Click_Grid"
>
<columns>
<asp:boundcolumn
HeaderText="Full Name"
DataField="FullName"
/>
<asp:boundcolumn
DataField="EmpID"
Visible=False
/>
<asp:buttoncolumn
HeaderText="Click to Delete"
ButtonType="PushButton"
Text="Delete Record"
/>
</columns>
</asp:datagrid>
</form>
</BODY>
</HTML>
<%@ Page Language=VB Debug=true %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OLEDB" %>
<script runat=server>
Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)
If Not IsPostBack Then
BuildDataList
End If
End Sub
Sub Edit_Grid(sender As Object, e As DataGridCommandEventArgs)
dgEmps.EditItemIndex = e.Item.ItemIndex
BuildDataList
End SubSub Update_Grid(ByVal Sender as Object, ByVal E as DataGridCommandEventArgs)
Dim TheID as String
Dim LastName as String
Dim FirstName as String
TheID = E.Item.Cells(2).Text
LastName = CType(e.Item.Cells(0).Controls(0), TextBox).Text
FirstName = CType(e.Item.Cells(1).Controls(0), TextBox).Text
Dim DBConn as OleDbConnection
Dim DBUpdate As New OleDbCommand
DBConn = New OleDbConnection( _
"PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
& "DATA SOURCE=" _
& Server.MapPath("/tt/C4/DGDB.mdb;"))
DBUpdate.CommandText = "Update Employees " _
& "Set LastName = '" & LastName &"', " _
& "FirstName = '" & FirstName & "' " _
& "Where EmpID = " & TheID
DBUpdate.Connection = DBConn
DBUpdate.Connection.Open
DBUpdate.ExecuteNonQuery()
DBConn.Close
dgEmps.EditItemIndex = -1
BuildDataList
End Sub
Sub BuildDataList ()
Dim DBConn as OleDbConnection
Dim DBCommand As OleDbDataAdapter
Dim DSPageData as New DataSet
DBConn = New OleDbConnection( _
"PROVIDER=Microsoft.Jet.OLEDB.4.0;" _
& "DATA SOURCE=" _
& Server.MapPath("/tt/C4/DGDB.mdb;"))
DBCommand = New OleDbDataAdapter _
("Select * From Employees " _
& "Order By LastName, FirstName", DBConn)
DBCommand.Fill(DSPageData, _
"Employees")
dgEmps.DataSource = _
DSPageData.Tables("Employees").DefaultView
dgEmps.DataBind()
End Sub
</SCRIPT>
<HTML>
<HEAD>
<TITLE>Editing Rows from a DataGrid Control</TITLE>
</HEAD>
<Body LEFTMARGIN="40">
<form runat="server">
<BR><BR>
<asp:Label
id="lblMessage"
runat="server"
/>
<BR><BR>
<asp:datagrid
id="dgEmps"
runat="server"
autogeneratecolumns="false"
oneditcommand="Edit_Grid"
onupdatecommand="Update_Grid"
>
<columns>
<asp:boundcolumn
HeaderText="Last Name"
DataField="LastName"
/>
<asp:boundcolumn
HeaderText="First Name"
DataField="FirstName"
/>
<asp:boundcolumn
datafield="EmpID"
visible=False
readonly=true
/>
<asp:editcommandcolumn
edittext="Edit"
updatetext="Update"
itemstyle-wrap="false"
headertext="Edit"
headerStyle-wrap="false"
/>
</columns>
</asp:datagrid>
</form>
</BODY>
</HTML>