這次的例子,與其說是教學,不如說是範例,這個常見到的例子是:有個GridView的刪除鍵,按下按鍵要跳出確認鍵,按下後再刪除,這個功能要怎麼寫?
其實答案非常簡單,甚至後端c#的部份一個字都不用動,只要寫aspx的部份就行了,以下是GridView的範例:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="uid" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="uid" HeaderText="uid" InsertVisible="False" ReadOnly="True" SortExpression="uid" />
<asp:BoundField DataField="uRealName" HeaderText="uRealName" SortExpression="uRealName" />
<asp:BoundField DataField="uName" HeaderText="uName" SortExpression="uName" />
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:Button ID="ButtonDel" runat="server" CommandName="Delete"
OnClientClick="return confirm('確認是否刪除')" Text="刪除" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:twg_AppConnectionString %>"
DeleteCommand="delete [twg_App_test].[dbo].[test_user] where ( [uid] = @uid) "
SelectCommand="SELECT * FROM [twg_App_test].[dbo].[test_user]">
<DeleteParameters>
<asp:Parameter Name="uid" />
</DeleteParameters>
</asp:SqlDataSource>
這個是程式的圖例:
這個例子最重要的是藍色的部份,它是放到<Columns>之間的一個樣版,它有個CommandName="Delete" 是執行DeleteCommand的動作,再加個OnClientClick的程式碼就可以在刪除前跳出確認是否刪除的功能,而這個例子可以在刪除前做一些判斷再確認是否刪除,
--
這是還滿常見的例子,以上是精簡版本的寫法,為了方便找到資料就寫在這邊,資料表資料的架構和名稱就如圖所示。
--