Bu makalemizde geliştirdiğimiz uygulamalarımızda sıkça kullandığımız kısa ama bir okadar da işe yarayacak kodlardan birkaçını inceleyeceğiz.
1.) Attributes.Add Metodu ile Client Taraflı Script Çalıştırmak.
Sunucu taraflı (Server Side) bir kontrole, nitelik(Attribute) ekleyerek kullanıcı taraflı (Client Side) script alt yordamı yada fonksiyonu çalıştırabiliriz. Bu işlem için ilgili asp.net kontrolüne attribute eklemek yeterli olacaktır.
Örnek verecek olursak;
Sayfamıza bir tane button kontrolü ekleyelim.
Aspx sayfamızın HTML kısmına,
<script language="vbscript" type="text/vbscript" >
sub Calistir()
Msgbox "ÇALIŞTIII..."
end sub
</script>
Yukarıdaki koddan da anladığınız gibi Calistir() adında bir alt yordam ekliyoruz.
Şimdi sırada son adım olarak button kontrolümüze attribute eklemek kaldı.o da çok basit.
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Button1.Attributes.Add("onclick", "calistir()")
End Sub
Sayfamızın Load kısmında, button kontrolümüzün onclick olayına yeni bir nitelik(attribute) olarak calistir() alt yordamını çalıştırması gerektiğini belirtiyoruz. Load kısmında belirtmemizin sebebi sayfanın yüklenme aşamasında ilgili niteliğin atanması ve sayfa yüklendikten sonra da kullanıma hazır olması içindir. Sayfamızı çalıştırıp button kontrolüne tıkladığımızda ekran görüntümüz şu şekilde olacaktır.
2.) Sayfa Adının Elde Edilmesi.
Klasik ASP' de ServerVariable koleksiyonunu kullanarak, HTML uygulamalarda ise çeşitli DHTML kodlarıyla sayfa adını elde edebiliyorduk. Bu işlem ASP.Net ortamında bir hayli kolaylaştı. Aşağıdaki kod lblsayfadi isimli label kontrolüne sayfa adını yazdırmaktadır.
lblsayfadi.Text = Me.Page.ToString.Replace("_aspx", ".aspx").Remove(0, 4)
3.) 30 Karakterlik Sayı ve Rakamdan Oluşan Rastgele Kod Oluşturulması.
Bu örnek kod için, sayfamıza bir button kontrolü birde label kontrolü ekleyelim.
30 Karakterlik kodu oluşturacak fonksiyonumuzu yazalım.
Function Kodolustur(ByVal uzunluk As Integer)
Dim sb As New StringBuilder
Dim strrandom As New System.Random
Dim strChars() As String = {"A", "B", "C", "D", "E", "F", "G", "H", "I", _
"J", "K", "L", "M", "N", "O", "P", "Q", "R", _
"S", "T", "U", "V", "W", "X", "Y", "Z", _
"1", "2", "3", "4", "5", "6", "7", "8", "9", "0", _
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", _
"l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"}
Dim maxRand As Integer = strChars.GetUpperBound(0)
For i As Integer = 0 To uzunluk
Dim rndnumber = strrandom.Next(maxRand)
sb.Append(strChars(rndnumber))
Next
Return sb.ToString
End Function
Şimdide button1 isimli button kontrolümüze tıklanıldığında kodolustur() fonksiyonunu çağıracak olan kodumuzu yazalım.
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Label1.Text = Kodolustur(30)
End Sub
Farkettiğiniz gibi kodolustur() fonksiyonu parametre olarak karakter uzunluk değerini alıyor. Ben burada 30 değerini gönderdim, bu nedenle 30 karakterlik karışık karakterler oluşturdu. Siz bu sayıyı değiştirebilirsiniz.
Son olarak sayfamızı çalıştırdığımızda ekran çıktımız şu şekilde olacaktır.
4.) VBScript ile Clipboard' a kopyalama ve Clipboard' dan Okuma
Tahmin edeceğiniz gibi bu işlem için ASP.Net kullanmayacağız. Klasik VBScript işimizi görecektir. Sayfamızın HTML kısmına, iki buton, bir span, birde textbox oluşturacak kodu yazalım.
<input id="txtclipboard" type="text" />
<input id="btnkopyala" type="button" value="Kopyala" OnClick="clipboardyaz()" />
<br /><br />
<input id="btnoku" type="button" value="Oku" OnClick="clipboardoku()" />
<span id="lblokunan" style="border:1px silver solid;width:300px;height:40px"></span>
Koddan da anlayacağınız gibi Clipboard' a yazmak için ve Clipboard' dan okuman için butonların onclick olayına alt yordamları atadık.
Şimdi bunları yazalım ve bitirelim.
sub clipboardyaz()
document.parentWindow.clipboardData.setData "text", txtclipboard.value
end sub
sub clipboardoku()
if document.parentWindow.clipboardData.getData("text")<>"" then
lblokunan.innertext=document.parentWindow.clipboardData.getData("text")
end if
end sub
Evet. Alt yordamları da yazdığımıza göre sayfamızı çalıştırabiliriz.
Textbox' a yazdığımız metni Kopyala butonuna basarak Clipboard' a kopyalıyoruz, Oku butonuna basarak da okuyoruz. Hepsi bu kadar