C# Access
Jag hämtar bilder från en accessdatabas med hjälp av en datagrid.
imagegallery.aspx.cs
private void Page_Load(object sender, System.EventArgs e)
{
//<- Databasanslutning ->
OleDbConnection myConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Server.MapPath("addpic.mdb"));
string strSQL = "SELECT * FROM stairs ORDER BY imageID DESC";
//Open Connection
OleDbCommand myCommand = new OleDbCommand(strSQL, myConnection);
OleDbDataReader myReader;
try
{
myConnection.Open();
myReader = myCommand.ExecuteReader();
ImageDataGrid.DataSource = myReader;
//Bind data to DataGrid
ImageDataGrid.DataBind();
myConnection.Close();
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
}
och
imagegallery.aspx
<form id="Form1" method="post" runat="server">
<asp:datagrid DataKeyField="imageID" id="ImageDataGrid" AutoGenerateColumns="False" Runat="server" OnDeleteCommand="MyDataGrid_Delete">
<Columns>
<asp:TemplateColumn>
<HeaderTemplate>
Bilder
</HeaderTemplate>
<ItemTemplate>
<img border="0" Alt='<%#DataBinder.Eval(Container.DataItem, "image_name")%>' src='<%# "viewimage.aspx?picture_id=" + DataBinder.Eval(Container.DataItem, "imageID")%>' />
<br>
<b>Bildbeskrivning:</b>
<asp:Label id=ImageDescription Runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "image_description")%>' />
<br>
<b>Storlek:</b>
<asp:Label id=Size Runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "image_size")%>' />
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
</form>
Nu skulle jag vilja ha en delete funktion på varje rad.. hur ska jag göra det.. Har jag det som det är så kan jag inte lägga in
<asp:ButtonColumn Text="delete" CommandName="Delete">
Hur ska jag göra?