Hello!
I'm trying to set an edit button on my page but I can't get it working.
Could someone tell me what am I doing wrong?
(sorry for the size)
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDB" %>
<%@ Page Language="
VB" Debug="true" %>
<html>
<script language="
VB" runat="server">
Sub Page_Load(Sender As Object, E As EventArgs)
If Not Request.QueryString("id") Is Nothing
Dim DS As DataSet
Dim MyConnection As OleDBConnection
Dim MyCommand As OleDBDataAdapter
Dim Query As String
Query = "select * from Tabela where id = @id"
MyConnection = New OleDBConnection("Provider=Microsoft.Jet.OLEDB.4.0; " & "Data Source=C:\Inetpub\wwwroot\DOT\pessoal\ECO.PATROL - PESSOAL.mdb")
MyCommand = New OleDBDataAdapter(Query, MyConnection)
Dim param As OleDBParameter = New OleDBParameter("@id", DbType.String)
param.Value = Server.HtmlEncode(Request.QueryString("id"))
myCommand.SelectCommand.Parameters.Add(param)
DS = New DataSet()
MyCommand.Fill(DS, "Tabela")
MyDataList.DataSource = DS.Tables("Tabela").DefaultView
MyDataList.DataBind()
End If
End Sub
Sub MyDataList_Edit(Sender As Object, E As DataListCommandEventArgs)
MyDataList.EditItemIndex = CInt(e.Item.ItemIndex)
MyDataList.DataBind()
End Sub
Sub MyDataList_Update(Sender As Object, E As DataListCommandEventArgs)
Dim MyConnection as New OleDBConnection("Provider=Microsoft.Jet.OLEDB.4.0; " & "Data Source=C:\Inetpub\wwwroot\DOT\pessoal\ECO.PATROL - PESSOAL.mdb")
Dim MyCommand As New OleDBDataAdapter("update Tabela set nacionalidade=@nacionalidade where id=@id", MyConnection)
Dim EditText As HtmlInputText
EditText = E.Item.FindControl("edit")
Message.InnerHtml = "Actualização efectuada: " & EditText.Value
MyDataList.EditItemIndex = -1
MyDataList.DataBind()
End Sub
Sub MyDataList_Cancel(Sender As Object, E As DataListCommandEventArgs)
MyDataList.EditItemIndex = -1
MyDataList.DataBind()
End Sub
</script>
<body topmargin="0" leftmargin="0" marginwidth="0" marginheight="0">
<form runat="server">
<table>
<tr>
<td valign="top">
<ASP:DataList id="MyDataList" OnEditCommand="MyDataList_Edit" OnUpdateCommand="MyDataList_Update" OnCancelCommand="MyDataList_Cancel" runat="server">
<ItemTemplate>
<table cellpadding=10 style="font: 10pt verdana">
<tr>
<td width=1 bgcolor="BD8672"/>
<td valign="top">
<IMG alt="foto" SRC='fotos/<%# DataBinder.Eval(Container.DataItem, "fotografia") %>' width="100" Border="1"><br>
</td>
<td valign="top">
<b>Nome: </b><%# DataBinder.Eval(Container.DataItem, "nome") %><br>
<b>Morada: </b><%# DataBinder.Eval(Container.DataItem, "morada") %><br>
<b>Nacionalidade: </b><%# DataBinder.Eval(Container.DataItem, "nacionalidade") %><br>
<b>Número: </b><%# DataBinder.Eval(Container.DataItem, "numero") %><br>
<asp:linkbutton CommandName="Edit" runat="server">
<img alt="edit book" border="0" src="images/edit_book.gif" >
</asp:linkbutton>
</td>
</tr>
</table>
</ItemTemplate>
<EditItemTemplate>
<table cellpadding=10 style="font: 10pt verdana">
<tr>
<td width=1 bgcolor="BD8672"/>
<td valign="top">
<b>Title: </b><%# DataBinder.Eval(Container.DataItem, "nome") %><br>
<b>Category: </b><%# DataBinder.Eval(Container.DataItem, "morada") %><br>
<b>Publisher ID: </b><%# DataBinder.Eval(Container.DataItem, "numero") %><br>
<b>Price: </b><input id="edit" type="text" value='<%# DataBinder.Eval(Container.DataItem, "nacionalidade") %>' runat="server"/>
<p>
<asp:linkbutton CommandName="Update" runat="server"><img alt="update" border="0" src="images/update_book.gif" ></asp:linkbutton>
<asp:linkbutton CommandName="Cancel" runat="server"><img alt="cancel" border="0" src="images/cancel_book.gif" ></asp:linkbutton>
</td>
</tr>
</table>
</EditItemTemplate>
</ASP:DataList>
</td></tr>
</table>
</form>
<div style="font: 10pt verdana;padding:0,15,15,15" id="Message" runat="server"/>
</body>
</html>