aspx檔案中關於DataList的代碼:
<asp:DataList ID="lbDatalist" runat="server" RepeatColumns="2" RepeatDirection="Horizontal"
SkinID="foo" OnItemCommand="lbDatalist_ItemCommand"> //紅色部分在mojoportal中使用有效果
<ItemTemplate>
<table>
<tr>
<td>
<%# Eval("lblc")%>
</td>
<td>
<asp:LinkButton ID="Datalist_Delete" runat="server" CommandName="Delete" CausesValidation="False"
Text="刪除" CssClass="delete-link" CommandArgument='<%# DataBinder.Eval
(Container.DataItem,"Id") %>'></asp:LinkButton>
</td>
</tr>
</table>
</ItemTemplate>
</asp:DataList>
aspx.cs檔案中關於datalist實現“刪除”功能的部分:
//當然了,以下的三種實現“刪除”的方法只能用一個嘍!!
//在datalist中實現“刪除”功能方法一:
//在頁面的“設計”模式下,選中datalist,在右側“屬性”--"事件"
//中雙擊右側的空白處,自動產生一個空的方法,然後自己實現刪除功能
//(在<asp:DataList></asp:DataList>標籤中會自動在產生一句話:
// ondeletecommand="lbDatalist_DeleteCommand")
protected void lbDatalist_DeleteCommand(object source, DataListCommandEventArgs e)
{
decimal id = Convert.ToDecimal(e.CommandArgument);//擷取要刪除的id?是datalist的行的id還是資料的id?
***********此處補充代碼,實現“刪除”**********
//再綁定下
***********此處補充代碼,再次綁定,以看到刪除後的效果**********
}
//在datalist中實現“刪除”功能方法二:
//在頁面的“源”模式下,在<asp:LinkButton></asp:LinkButton>中加上下面的命令:
// OnCommand="delete"(特別注意:兩個“delete”一定要相同,c#中是區分大小寫)
//在cs代碼中加上如下的方法:
protected void delete(object sender, CommandEventArgs e)
{
decimal id = Convert.ToDecimal(e.CommandArgument);//擷取要刪除的id?是datalist的行的id還是資料的id?
***********此處補充代碼,實現“刪除”**********
//再綁定下
***********此處補充代碼,再次綁定,以看到刪除後的效果**********
}
//在datalist中實現“刪除”功能方法三:
//在頁面的“源”模式下,在<asp:DataList></asp:DataList>中加上下面的命令:
// OnItemCommand="lbDatalist_ItemCommand"
//(註:不需要在<asp:LinkButton></asp:LinkButton>中加上 OnCommand="delete" 命令)
//在cs代碼中加上如下的方法:
protected void lbDatalist_ItemCommand(object source, DataListCommandEventArgs e)
{
decimal id = Convert.ToDecimal(e.CommandArgument);
***********此處補充代碼,以擷取要刪除的實體**********
if (e.CommandName == "Delete")
{
***********此處補充代碼,實現“刪除”********** }
//再綁定下
***********此處補充代碼,再次綁定,以看到刪除後的效果**********
}