Çogu kisinin herhangi gibi bir veri kontrolünde silme islemi yaparken onay almasi gerekmektedir. Ki hepimizin karsilastigi bir gereklilikdir diyebilirim.
Datalist kontrolümüzden baslayacagim. Öncelikle sayfama Asp.Net datalist ve sqldatasource sürükledim ve biraktim. Gerekli ayarlamalari yaptiktan sonra(sadece verileri listeleyecegim) bir son görünüsüne bakalim.
Burada basit bir ID siralama islemi yaptim söyle ki SQLDATASOURCE 'umun ConnectionStringini ve SelectCommand'ini belirledim daha sonrada verileri listeleyecek kontrolümde (datalist) DahaSourceID sinide SqlDataSource'e verdigim ID yi belirledim. ve Itemtemplate içinde ID yi yazdirdim.
<asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource1"
onitemcommand="DataList1_ItemCommand">
<ItemTemplate>
<%#Eval("TopicID") %>
<br />
<asp:Button ID="BtnSil" runat="server" Text="Sil" CommandName="VeriSil" CommandArgument='<%#Eval("TopicID") %>'/>
</ItemTemplate>
</asp:DataList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:SQL %>"
ProviderName="<%$ ConnectionStrings:SQL.ProviderName %>"
SelectCommand="Select * from IDList" DeleteCommand="Delete IDList Where TopicID=@TopicID"></asp:SqlDataSource>
Protected Sub DataList8_ItemCommand(source As Object, e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles DataList8.ItemCommand
If e.CommandName = "VeriSil" Then
SqlDataSource1.DeleteParameters.Add("TopicID", Convert.ToString(e.CommandArgument))
SqlDataSource1.Delete()
SqlDataSource1.DataBind()
End If
End Sub
Bu hale geldi. Sayfamizi teste açtigimizda görsel olarak sol tarafdakini göreceksiniz. üst tarafda rakamlar ve alt tarafinda ise Sil butonunu göreceksiniz. Ve Sil butonuna bastigimiz taktirde Eventimiz çalisacak ve VeriSil olan CommandName'e gidecek sonradasinda ilgili ID ye esit olani silecektir. Buraya kadar bildiginiz gibi hersey normal.
Onay meselesinde de abartilacak kadar önemli bir sey yok ki bu kadar uzun yazma nedenim sadece onay penceresi için degil diger türlüde bilmeyen yada ögrenmek isteyen arkadaslara yardimci olmaktir.
Datalist içindeki butonumuzun OnClientClick özelligine : "return window.confirm('Siliyorum bak emin misin?');" yazdigimiz taktirde islem tamamlanacaktir. Söyle ki butonumuz
< asp:Button ID="BtnSil" runat="server" Text="Sil" CommandName="VeriSil" CommandArgument='<%#Eval("TopicID") %>' OnClientClick="return window.confirm('Siliyorum bak emin misin?');"/>
en son bu hali alacaktir ve sayfamizi yeniledigimiz taktirde ise resimdeki gibi bir uyari ile karsilasilacaktir.