Pek fazla kullanmasakda Literal kontrolü gözünüze çarpmıştır. Nedir ? ne işe yarar? hiç baktınız mı ?
Literal kontrolü label kontrolü gibi text propertysine atanan değeri html çıktısına yazdırır. Label'dan 1. farkı label text propertysindeki değeri html çıktısında span tagları arasında yazdırırken literal text propertysine atanan değeri doğrudan doğruya yazdırmayı sağlar. Peki bu durum nerde ve nasıl işe yarar?
mesela html çıktısına html tagları yazarken kullanabiliriz.
Literal kontrolüne ait mode property sine System.Web.UI.WebControls.LiteralMode enumaratörüne ait enum değişkenlerinden yaptığınız seçime göre kontrolün davranış nitelikleri değişecektir.
örneğin;
PassThrough: Text propertysine atanan değerin modifiye olmadan görüntülenmesini sağlar.
Encode: Text propertysine atanan değeri html-encoded haline getirerek tag işaretlerinin encoded karakterlere dönüşmesini sağlar.
Transform: Text propertysine atanan değer içerisinde browser tarafından yorumlanamayan tagların süzülerek gösterilmesini sağlar. Ancak günümüzde kullandığımız tüm tarayıcıların xhtml desteklediğini düşünürsek, Çıktının PassThrough modundan bir farkı olmayacaktır. Çünkü xhtml varolmayan tagların görüntülenmesine sebep olacaktır.
yukarıdaki kod blogunu çalıştırdığımızda alacağımız örnek çıktı aşağıdaki gibi olacaktır.