Türker Öztürk

CSS Stil Dosyasını Code Behind Tarafında Tanımlamak

Kullanıcı Oyu:  / 0
En KötüEn İyi 

HTML LINK tagı olarak aspx sayfasından değil de, programatik olarak ve Code Behind tarafında CSS stil dosyasının linkini tanımlamak istersek ne yapacağız?

Bu ne işimize yarar: örneğin dinamik olarak CSS dosyalarının yerini belirtmek gerektiğinde.

htmllink nesnesini kullanabilmek için

using System.Web.UI.HtmlControls;

diye cs sayfamızın başında belirttikten sonra, Page_Init eventinde aşağıdaki satırları belirtirsek, klasör yolunu göreli olarak belirttiğimiz CSS dosyasını aspx sayfasına bağlar.

 

  protected void Page_Init(object sender, EventArgs e)
  {
    // Define an HtmlLink control.
    HtmlLink myHtmlLink = new HtmlLink();
    myHtmlLink.Href = "~/StyleSheet.css";
    myHtmlLink.Attributes.Add("rel", "stylesheet");
    myHtmlLink.Attributes.Add("type", "text/css");

    // Add the HtmlLink to the Head section of the page.
    Page.Header.Controls.Add(myHtmlLink);

  }

Kaynak: http://msdn.microsoft.com/en-us/library/system.web.ui.htmlcontrols.htmllink.aspx

Diğer faydalı olabilecek kaynaklar:

http://www.4guysfromrolla.com/articles/112906-1.aspx

http://www.asp.net/cssadapters/ (bu asp.net kontrollerini tableless kullanmak için bileşen, henüz denemedim, VS 2010'da gerek var mı bilmiyorum).

Ayrıca App_Browsers isminde klasör oluşturup, içinde .browser dosyaları tanımlayarak, asp.net kontrolleri ve internet gezginleri için sıfırdan stiller oluşturmak mümkünmüş, henüz denemedim.