Programsal Olarak MasterPage Sayfalarını Değiştirmek

Bilindiği üzere Masterpage yapısı içeriğin değişken fakat belirli kısımların (özellikle menüler) sabit olduğu durumlarda kullanılır. Her ne kadar bu genellikle geçerli olsa da tam tersi ile karşılaşabileceğiniz durumlar da olabilir. İçerik sabit ama masterpage dinamik. Örneğin bir yönetim paneli geliştiriyorsunuz ve iki adet rolünüz var. Sekreter rolü için menüler kısıtlı iken yönetici rolü için menuler daha detaylı olabilir. İşte bu gibi durumlarda birden fazla masterpage kullanıp kişinin rolüne göre yapılandırma yapabilirsiniz. Tabii bu sadece şu an aklımda olan bir örnektir. Bu durumu farklı yollarla da çözeceğiniz aşikardır.

Şimdi Örneğimize başlayabiliriz.

1.Adım: File/ New / Web Site yolunu izleyerek bir adet Asp.Net sayfası oluşturalım.

2.Adım: WebSite/Add New Item yolunu izleyerek iki adet masterpage sayfası ekleyelim.

3.Adım: Herhangi bir masterpage üzerinde iken Web Site/Add Content Page seçeneği ile bir adet sayfa ekleyelim.

4.Adım: Sayfanıza bir adet PreInit eventi ekleyiniz.

crystal-reportun-web-servis-olarak-yayinlanmasi-1

crystal-reportun-web-servis-olarak-yayinlanmasi-1

Artık Source kısmında her ne kadar MasterPageFile=”~/MasterPage.master” demiş olsanız bile PreInit eventi ile sayfanızın MasterPage sayfasını değiştirebilirsiniz.

Diğer yazılarımda görüşmek üzere.