08 Mar 2007 ASP.NET Custom Control Geliştirme – Popup Açtıran Button Kategori: ASP.NET Etiketler: ASP.NETC# 0 Yorum Merhaba arkadaşlar, ilk makalemizde diğer web geliştirme editörlerinde olan ama .net toolbox’da olmayan marquee kontrolünü geliştirmiştik. Bu makalemiz de ise farklı bir custom web control geliştireceğiz. Popup Açtıran Button Hemen hemen her web sitesinde kullandıgımız Popup pencereler bizi çok fazla ugrastırır. Her defasında yeni bir javascript olusturup olusturdugumuz javascripti kontrollerin eventlerinde çagırırız. Bu hem bizi çok ugrastırır hemde çok fazla zaman kaybettirir. Iste bu zaman kaybanı önlemek için popup açtıran bir buton gelistirecegiz. Bir button olusturup bu butona tıklandıgında popup pencere açtıracagız. Butonun ve açılacak olan bu pencerenin boyutlarını kullanıcı degistirebilecek. Simdi ilk olarak yeni bir WebControl Library projesi olusturalım. Kodlamaya baslıyalım; using System; using System.Collections.Generic; using System.ComponentModel; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace PopupButton { [DefaultProperty("Text")] [ToolboxData("<{0}:semPopupButton runat=server>")]//kontrolümüze verilecek olan ID Tabiki kendi adımla baslıyor (: public class semPopupButton : WebControl { [Bindable(true)] [Category("Appearance")] [DefaultValue("")] [Localizable(true)] //Kontrolümüzün özelliklerini tutacak olan degiskenler string _text; string _windowName; string _windowUrl; string _windowWidth; string _windowHeight; string _buttonWidth; string _buttonHeight; //SemPopupButton adlı bir özellik grubuna eklenecek bu özellik Açılacak olan Window'un URL'ni tutan bir özelliktir. [Category("SemPopupButton"), DefaultValue("WindowUrl"), Description("Açılacak olan Popup Pencerenin URL'i")] public string WindowURL { get { return _windowUrl; } set { _windowUrl = value; } } //SemPopupButton adlı bir özellik grubuna eklenecek bu özellik Açılacak olan Window'un Title'ni tutan bir özelliktir. [Category("SemPopupButton"), DefaultValue("WindowsName"), Description("Açılacak olan Popup Pencerenin Title'i")] public string WindowName { get { return _windowName; } set { _windowName = value; } } //SemPopupButton adlı bir özellik grubuna eklenecek bu özellik Açılacak olan Window'un genisligini tutan bir özelliktir. [Category("SemPopupButton"), DefaultValue("PopupWidth"), Description("Açılacak olan Popup Pencerenin genisligi")] public string WindowWidth { get { return _windowWidth; } set { _windowWidth = value; } } //SemPopupButton adlı bir özellik grubuna eklenecek bu özellik Açılacak olan Window'un yüksekligini tutan bir özelliktir. [Category("SemPopupButton"), DefaultValue("WindowHeight"), Description("Açılacak olan Popup Pencerenin yüksekligi")] public string WindowHeight { get { return _windowHeight; } set { _windowHeight = value; } } //SemButton adlı bir özellik grubuna eklenecek bu özellik butonun textini tutan bir özelliktir. [Category("SemButton"), DefaultValue("TextName"), Description("Butonn Text Özelligi")] public string Text { get { return _text; } set { _text = value; } } //SemButton adlı bir özellik grubuna eklenecek bu özellik butonun genisligini tutan bir özelliktir. [Category("SemButton"), DefaultValue("ButtonWidth"), Description("Butonun Genisligi")] public string ButtonWidth { get { return _buttonWidth; } set { _buttonWidth = value; } } //SemButton adlı bir özellik grubuna eklenecek bu özellik butonun yüksekligini tutan bir özelliktir. [Category("SemButton"), DefaultValue("ButtonHeight"), Description("Butonun Yüksekligi")] public string ButtonHeight { get { return _buttonHeight; } set { _buttonHeight = value; } } protected override void RenderContents(HtmlTextWriter writer) { try { string popupButton; catch { writer.RenderBeginTag(HtmlTextWriterTag.Div); writer.Write("Popup Pencere..."); writer.RenderEndTag(); } } } } Kodumuzu tamamladık simdi testing için projemize bir web site ekleyelim. Ekledikten sonra Web Site'in referanslarına Projects sekmesinden WebControl Libraryi ekleyelim. Simdi toolbox'a bakalım eklenmismi (: Kontrolümüz eklendi Simdi sayfamıza ekleyelim. Simdi özelliklerimizi ayarlayalım. Evet olusturdugumuz özellik grupları geldi. Ve biz özelliklerimizi yazdık. Simdi projeyi çalıstıralım. Ve butona tıklayalım (: Bu makalemizinde de sonuna geldik. Tesekkür eder iyi çalısmalar dilerim. Sem GÖKSU MCP | MCAD.NET | MCTS | ASP.NET MVP Örnek Kodlar için mail adresimi kullanabilirsiniz semgoksu@semgoksu.com Kaynaklar www.codeproject.com Yorum (0) Bu yazıya henüz yorum yapılmamış... Yorum Yaz * Ad Soyad: * Email: * Message: