http://dotnet.aspx.cc/ShowDetail.aspx?id=8ADE535F-AD40-4DE3-A962-A64B4FAF12C4
解决方案 »
- 【【【【【【【【【【【【【【自定义控件高手进】】】】】】】】】】】】】】
- asp.net给出错误的ORACLE exception
- 上传视频的问题.
- 每个页面中判断cookie是否为空,如果为空,则弹出提示框,为什么不行?急求。
- 有没有什么办法可以解决下面的问题。。?
- 关键字 'FROM' 附近有语法错误(((存储过程)))
- Response.Redirect("url.aspx?id=1")在左框架,运行他后如何在右框架后打开url.aspx。
- 小弟刚学ASP.NET 有个问题。希望各位朋友解答
- 关于IE的定制中!____在线等!!!
- 大虾帮忙,ASP。NET初学者问题:(
- Page.Response.Write问题!!!
- 请问哪里有asp.net控件的源代码下载?
ms-help://MS.NETFrameworkSDKv1.1.CHS/cpref/html/frlrfSystemWebUIWebControlsDataGridClassUpdateCommandTopic.htm
http://authors.aspalliance.com/das/editdatagrid.aspx
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<html>
<script language="VB" runat="server">
Dim strConn as String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath(".\\kk.mdb") + ";"
Dim myConnection as New OleDbConnection (strConn) Sub Page_Load(Src As Object, E As EventArgs)
If Not (IsPostBack)
BindGrid()
End If
End Sub Sub BindGrid()
Dim DS As DataSet
Dim MyCommand As OleDbDataAdapter
MyCommand = new OleDbDataAdapter("SELECT TOP 5 * FROM [board] ORDER BY boardid DESC", MyConnection)
DS = new DataSet()
MyCommand.Fill(DS, "table1")
MyDataGrid.DataSource=DS.Tables("table1").DefaultView
MyDataGrid.DataBind()
End Sub
Public Sub MyDataGrid_Cancel(sender As Object, e As DataGridCommandEventArgs)
MyDataGrid.ShowFooter = True
MyDataGrid.EditItemIndex = -1
BindGrid()
End Sub Sub MyDataGrid_Edit(Sender As Object, E As DataGridCommandEventArgs)
MyDataGrid.ShowFooter = False
MyDataGrid.EditItemIndex = CInt(E.Item.ItemIndex)
BindGrid()
End Sub Public Sub MyDataGrid_Update(sender As Object, e As DataGridCommandEventArgs)
Dim ID As String = CType(e.Item.FindControl("lblID"), Label).Text
Dim BoardType As String = CType(e.Item.FindControl("txtBoardType"), TextBox).Text
Dim ReadMe As String = CType(e.Item.FindControl("txtReadMe"), TextBox).Text
Response.write (ID & "<BR>" & BoardType & "<BR>" & ReadMe)
UpdateRecord(id,boardtype,readme) 'Call Sub
MyDataGrid.ShowFooter = True
MyDataGrid.EditItemIndex = -1
BindGrid()
End Sub Public Sub MyDataGrid_Delete(sender As Object, e As DataGridCommandEventArgs)
dim i as String = CType(e.Item.FindControl("lblID"), Label).Text
Response.write (i)
DeleteRecord(i) 'Call Sub
MyDataGrid.EditItemIndex = -1
BindGrid()
End Sub Sub AddRecord(newBoardType,newReadMe)
Dim MyCommandAdd As OleDbCommand
Dim InsertCmd As String = "INSERT INTO board (boardtype,readme) values (@boardtype,@readme)"
MyCommandAdd = New OleDbCommand(InsertCmd, myConnection)
MyCommandAdd.parameters.add("@boardtype",Format(newBoardType))
MyCommandAdd.parameters.add("@readme",Format(newReadMe))
MyCommandAdd.Connection.Open()
MyCommandAdd.ExecuteNonQuery()
MyCommandAdd.Connection.Close()
End Sub Sub DeleteRecord(DelRecord)
Dim MyCommandDel As OleDbCommand
Dim InsertCmd As String = "DELETE FROM board WHERE boardid = @Id"
MyCommandDel = New OleDbCommand(InsertCmd, myConnection)
MyCommandDel.parameters.add("@id",DelRecord)
MyCommandDel.Connection.Open()
MyCommandDel.ExecuteNonQuery()
MyCommandDel.Connection.Close()
End Sub Sub UpdateRecord(newID,newBoardType,newReadMe)
Dim MyCommandDel As OleDbCommand
Dim InsertCmd As String = "UPDATE board SET boardtype=@boardtye,readme=@readme WHERE boardid =" & newID
MyCommandDel = New OleDbCommand(InsertCmd, myConnection)
MyCommandDel.parameters.add("@boardtype",newBoardType)
MyCommandDel.parameters.add("@readme",NewReadme)
MyCommandDel.Connection.Open()
MyCommandDel.ExecuteNonQuery()
MyCommandDel.Connection.Close()
End Sub
</script>
<form runat="server" ID="editDataGrid">
<ASP:DataGrid id="MyDataGrid" runat="server"
Width="200"
BackColor="#ffffff"
BorderColor="black"
CellPadding=3
CellSpacing="0"
HeaderStyle-BackColor=#ff0000
HeaderStyle-Font-Name="arial"
HeaderStyle-Font-Bold=True
HeaderStyle-Font-Size="11"
HeaderStyle-ForeColor=#ffffff
AlternatingItemStyle-BackColor=#ffffcc
ItemStyle-Font-Name="arial"
ItemStyle-Font-Size="10"
OnCancelCommand="MyDataGrid_Cancel"
OnUpdateCommand="MyDataGrid_Update"
OnDeleteCommand="MyDataGrid_Delete"
OnEditCommand="MyDataGrid_Edit"
AutoGenerateColumns="false" >
<Columns>
<asp:TemplateColumn HeaderText="BoardID" ItemStyle-Width="30px">
<ItemTemplate>
<asp:Label ID="lblID" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "boardid") %>' />
</ItemTemplate>
</asp:TemplateColumn> <asp:TemplateColumn HeaderText="BoardType">
<ItemTemplate>
<asp:Label ID="lblBoardType" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "boardtype") %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" id="txtBoardType" Text='<%# (DataBinder.Eval(Container.DataItem, "boardtype")) %>' TextMode="MultiLine" Rows="3"/>
<asp:RequiredFieldValidator id="reqval_BoardType" Text="Can't Null" ControlToValidate="txtBoardType" Display="Dynamic" Font-Name="arial" Font-Size="12" runat=server/>
</EditItemTemplate>
</asp:TemplateColumn> <asp:TemplateColumn HeaderText="ReadMe">
<ItemTemplate>
<asp:Label ID="lblReadMe" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "ReadMe") %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" id="txtReadMe" Text='<%# (DataBinder.Eval(Container.DataItem, "ReadMe")) %>' TextMode="MultiLine" Rows="3"/>
<asp:RequiredFieldValidator id="reqval_ReadMe" Text="Can't Null" ControlToValidate="txtReadMe" Display="Dynamic" Font-Name="arial" Font-Size="12" runat=server/>
</EditItemTemplate>
</asp:TemplateColumn> <asp:EditCommandColumn
ButtonType="PushButton" UpdateText="Update" CancelText="Cancel"
EditText="Edit" HeaderText="Edit">
</asp:EditCommandColumn> <asp:TemplateColumn HeaderText="Delete">
<ItemTemplate>
<asp:Button CommandName="Delete" Text="Delete" ID="btnDel" Runat="server" />
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</ASP:DataGrid>
</form>
</body>
</html>你試試吧.
{
DataGrid1.EditItemIndex = e.Item.ItemIndex;
BindGrid();
}
Dim ID As String = CType(e.Item.FindControl("lblID"), Label).Text
Dim BoardType As String = CType(e.Item.FindControl("txtBoardType"), TextBox).Text
Dim ReadMe As String = CType(e.Item.FindControl("txtReadMe"), TextBox).Text
Response.write (ID & "<BR>" & BoardType & "<BR>" & ReadMe)
UpdateRecord(id,boardtype,readme) 'Call Sub
MyDataGrid.ShowFooter = True
MyDataGrid.EditItemIndex = -1
BindGrid()
End Sub
这句是关键的。作用就是更新数据。如需C#代码请回复。