[ASP.Net]GridView攻略03-刪除資料,並彈出刪除確認對話框
..........繼續閱讀剩下的內容請至finalevil's blog
以下圖片是本範例的結果:
下面是ASPX的內容,在GridView中新增加了一個包含刪除按鈕的TemplateField,這是由CommandField轉換而來。
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="5"
DataKeyNames="id" OnRowDeleting="GridView1_RowDeleting">
<HeaderStyle CssClass="headerstyle" />
<Columns>
<asp:TemplateField HeaderText="編號">
<ItemTemplate>
<asp:Label ID="lblId" runat="server" Text='<%# Bind("id") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtId" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="標題">
<ItemTemplate>
<asp:Label ID="lblTitle" runat="server" Text='<%# Bind("title") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtTitle" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="數量">
<ItemTemplate>
<asp:Label ID="lblNum" runat="server" Text='<%# Bind("num") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtNum" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="日期">
<ItemTemplate>
<asp:Label ID="lblDate" runat="server" Text='<%# Bind("date") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtDate" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CssClass="btnlink"
CommandName="Delete" Text="刪除" OnClientClick="return confirm('是否刪除?');"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
接著在GridView的RowDeleting事件中撰寫刪除資料列的相關程式。需注意的是如果有設定GridView的DataKeyNames屬性,我們就可以在程式中使用GridView1.DataKeys[e.RowIndex].Value取得所選擇資料對應的ID。
..........繼續閱讀剩下的內容請至finalevil's blog