Makale Özeti

Bu adımda içeriğin görsel özelliklerini kendi istekleri doğrultusunda düzenlemelerine imkan vereceğiz.

Makale

.NET 2.0 ile birlikte uygulama geliştiricilerin kullanımına sunulan Web part Framework’u yakından incelemeye devam ediyoruz.

Kullanıcıların WebPart’ları Çalışma Zamanında Düzenlemelerini Sağlamak

Kullanıcıların sitemize olan ilgileri, onlara sunduğumuz özelleştirme imkanları ile orantılı olarak artacaktır. İçeriğin yerini kendi istekleri doğrultusunda belirleyebilmelerini sağlamak oldukça iyi bir adımdı. İkinci adım olarak istedikleri içeriği sayfaya ekleme ve istediklerini sayfadan çıkartma, vazgeçmeleri durumunda sayfadan çıkarttıkları içeriği yeniden sayfaya ekleme imkanı vermek oldukça doğruydu. Şimdi üçüncü adımda içeriğin görsel özelliklerini kendi istekleri doğrultusunda düzenlemelerine imkan vereceğiz.

Bu bölümde EditorPart kontrollerini (AppearenceEditorPart, BehaviourEditorPart, LayoutEditorPart ve PropertyGridEditorPart) kullanmayı ve bu kontroller aracılığıyla kullanıcıya webpart’ların görünümlerini özelleştirme imkanını nasıl verebileceğimizi göreceğiz.

İlk olarak bu kontrolleri kısaca tanıyalım;

AppearanceEditorPart: Son kullanıcının title, genişlik ve yükseklik gibi pek çok görsel özelliği çalışma zamanında düzenleyebilmesini sağlar.

BehaviourEditorPart: Son kullanıcının webpart kontrolündeki edit, close ve minimize butonlarının görünümü gibi pek çok görsel özelliği çalışma zamanında düzenleyebilmesini sağlar.

LayoutEditorPart: Son kullanıcının webpart’ın pek çok görsel özelliğini düzenleyebilmesini mümkün kılar.

PropertyGridEditorPart: Son kullanıcının WebPart kontrolünün custom özelliklerini düzenlemesini mümkün kılar.

Şimdi adım adım kullanıcılarımıza webpart kontrollerimiz üzerinde düzenleme yapma imkanı vereceğiz. İlk olarak sayfamıza dört EditorPart kontrolünü (AppearanceEditorPart, BehaviourEditorPart, LayoutEditorPart, PropertyGridEditorPart) içerecek bir EditorZone kontrolü ekliyoruz.

  1. Projemizdeki default.aspx sayfasında yer alan tablonun uygun bir hücresine bir adet EditorZone kontrolü sürükleyerek bırakıyoruz. EditorZone kontrolü, EditorPart kontrollerini içinde barındıran ve yöneten kontroldür.


  2. WebPartları düzenleyebilmek için EditorZone kontrolüne EditorPart kontrollerini eklememiz gerekiyor. Birer adet AppearanceEditorPart, BehaviourEditorPart, PropertyGridEditorPart ve LayoutEditorPart kontrolünü EditorZone kontrolüne ekliyoruz ve auto format özelliği ile istediğimiz biçimlendirmeyi uyguluyoruz. EditorZone kontrolü şimdi aşağıdaki gibi görünüyor.


  3. Sayfamızdaki RadioButtonList kontrolüne aşağıdaki satırı ekliyoruz.
    <asp:ListItem>Görsel Düzenleme Modu</asp:ListItem>
  4. RadioButtonList kontrolünün SelectedItemChanged olayındaki koda ise aşağıdaki satırı ekliyoruz..

Case 3 : WebPartManager1.DisplayMode = _

      WebPartManager.EditDisplayMode

  1. F5 tuşuna basarak uygulamayı test edioruz. İlk aşamada gözümüze herhangi bir değişiklik çarpmasada, artık Calendar webpart’ının menüsünde Edit linkini görebiliriz.


  2. Edit linkini tıkladıktan sonra aşağıdaki grafikte görüldüğü gibi EditorZone görüntülenir. Buradan Calendar webpartının özelliklerini düzenleyebiliriz.


  3. Ancak yukarıdaki grafikte de görüldüğü gibi PropertyGridEditorPart kontrolü görüntülenmemektedir. Bu kontrolü görüntülemek için webpart’ımızın browsable ve personalizable olan public propertylerinin olması gerekmektedir.
  4. TranslationService webpart’’ını aşağıdaki şekilde düzenlersek, propertyGridEditorPart kontrolünün görüntülendiğini görebiliriz.

    <Personalizable(), WebBrowsable()> _

    Public Property strToTranslate() As String
  

Bir sonraki ve dizinin son bölümünde webpart’ların birbirleri ile iletişim kurabilmelerini nasıl sağlayabileceğimizi ele alıyor olacağız.

Kadir Sümerkent
kadir@sumerkent.com