Arşiv

Etiketlenen yazılar type

HTML TextArea elemanına girilebilecek karakter sayısını sınırlamak

17 Eylül 2010 2 yorum

HTML‘de metin kutularına (<input type=”text” />) girilebilecek karakter sayısını maxlength özelliği ile kısıtlayabiliyoruz;

<input type="text" id="AdSoyad" maxlength="75" />

Fakat TextArea elemanı için maxlength özelliği yer almamaktadır.

Eğer TextArea elemanı için maxlength özelliğini sağlamak istersek, sayfamıza javascript kodu eklememiz gerekir.

Örneğin, ilgili TextArea elemanına 100 karakterlik bir sınır koymak istiyorsak, aşağıdaki javascript kodunu sayfamıza ekleyebiliriz;

<script type="text/javascript">
	function TextAreaKarakterSayisiDogrula()
	{
		var sonSayi = 100 - document.getElementById("Adres").value.length;
		if (sonSayi >= 0)
		{
			document.getElementById("KalanKarakterSayac").innerHTML = sonSayi;
		}
		else
		{
			document.getElementById("Adres").value = document.getElementById("Adres").value.substring(0, 100);
			document.getElementById("KalanKarakterSayac").innerHTML = 0;
		}
	}
</script>

<textarea id="Adres" onkeyup="TextAreaKarakterSayisiDogrula()" cols="20" rows="5"></textarea>

Kalan karakter sayısı : <span id="KalanKarakterSayac">100</span>

Örnek kodu herhangi bir html sayfasına koyarsanız, farklı tarayıcılarda sorun çıkartmadan çalışacaktır.

C# Uygulamalarında XML Dokümantasyonu Kullanmak

18 Şubat 2010 Yorum yapılmamış

C# ile Uygulama Geliştirirken Yorum Satırlarını Kullanmak yazımda başladığım konuya XML Dokümantasyonunu eklemem gerekir.

Geleneksel C-tarzı yorum satırlarına ilave olarak C# geliştirilen kodların Xml Dokümantasyonunu otomatik olarak çıkartabilmek için, güçlü yorum operatörlerine sahiptir.

Bu yorum operatörleri (///) ile başlayan satırlara yazılır.

Aşağıdaki listedeki operatörler, derleyici (compiler) tarafından tanınır ve desteklenir;

<c> Tek satırı C# kodu olarak işaretler. Örneğin: <c>string AdSoyad = “Engin Polat”;</c>
<code> Birden çok satırı C# kodu olarak işaretler.
<example> İlgili satırları “örnek kod” olarak işaretler.
<exception> Exception sınıfını dokümante eder. (Derleyici(compiler) tarafından kontrol edilir)
<include> Başka bir dokümantasyon dosyasından yorum ekler. (Derleyici(compiler) tarafından kontrol edilir)
<list> Dokümantasyona liste ekler.
<param> Method parametresini dokümante eder. (Derleyici(compiler) tarafından kontrol edilir)
<paramref> Kelimenin parametre olduğunu işaretler. (Derleyici(compiler) tarafından kontrol edilir)
<permission> Öğeye erişim belirleyicisini dokümante eder. (Derleyici(compiler) tarafından kontrol edilir)
<remarks> Öğeye açıklama ekler.
<returns> Method’un dönüş tipini dokümante eder.
<see> Başka bir parametreye çapraz-referans ekler. (Derleyici(compiler) tarafından kontrol edilir)
<seealso> Açıklamaya “buna da bakın” parçası ekler. (Derleyici(compiler) tarafından kontrol edilir)
<summary> Öğenin kısa açıklamasını dokümante eder.
<value> Özelliği (property) tanımlar.

Örnek olması açısından, aşağıdaki Matematik sınıfını dokümantasyonu ile birlikte yazıyorum;

//Matematik.cs
namespace Engin.Polat
{
	///<summary>
	///  Engin.Polat.Matematik sınıfı.
	///  İki rakamın toplanmasına yaran
	///  Topla method'unu içerir.
	///</summary>
	public class Matematik
	{
		///<summary>
		///  İki rakamın toplanmasını sağlar.
		///</summary>
		///<example>Örnek olarak: Topla(3, 5);</example>
		///<returns>Toplama işleminin sonucu (int)</returns>
		///<param name="x">Toplama işleminin ilk rakamı</param>
		///<param name="y">Toplama işleminin ikinci rakamı</param>
		public int Topla(int x, int y)
		{
			return x + y;
		}
	}
}

Derleme sonucu oluşan Xml dokümanı aşağıdaki gibidir;

<?xml version="1.0"?>
<doc>
	<assembly>
		<name>ConsoleApplication4</name>
	</assembly>
	<members>
		<member name="T:Engin.Polat.Matematik">
			<summary>
				Engin.Polat.Matematik sınıfı.
				İki rakamın toplanmasına yaran
				Topla method'unu içerir.
			</summary>
		</member>
		<member name="M:Engin.Polat.Matematik.Topla(System.Int32,System.Int32)">
			<summary>
				İki rakamın toplanmasını sağlar.
			</summary>
			<example>Örnek olarak: Topla(3, 5);</example>
			<returns>Toplama işleminin sonucu (int)</returns>
			<param name="z">Toplama işleminin ilk rakamı</param>
			<param name="y">Toplama işleminin ikinci rakamı</param>
		</member>
	</members>
</doc>

Dikkat ederseniz, derleyici (compiler) bizim için ve elementlerini eklemiştir. Her element’i name özelliğine sahiptir ve değer olarak öğenin tam adını içerir.

Değerin ilk harfi özel bir anlam taşır;

T : Type
F : Field
M : Member