Jump to content

C# - Component Hazırlama


wmismail

Recommended Posts

Giriş

.Net ortamında bazen kullanmakta olduğumuz tool(kontroller) bize yeterli olmayabilir. Bu Sebeple kendimiz daha gelişmiş bileşenler hazırlayabiliriz. Bu noktada devreye component kavramı girer. Bu makalemizde textboxımızı dahada geliştirip ortaya yeni bir bileşen çıkaracağız.

Uygulama

Öncelikle Solution kısmından projemize Add>>New Item? diyerek component class ekliyoruz. Ben oluşturacağım bileşenimin ismini my_text verdim. Daha sonra textboxımızı miras alıp bunun üzerinden bileşenimizi oluşturmamız lazım. Miras alma işlemini şu kod ile yapıyoruz.

Inherits Windows.Forms.TextBox

Bu aşamada artık elimizde textbox kontrolümüz var ve biz buna yeni özellikler ekleyebileceğiz. TextBoxımıza 2 özellik ekleyeceğiz. Mouse ile üzerine geldiğimizde textbox arkaplanı istediğimiz renge göre değişecek ve Mouse ile üzerinde değilken yine arkaplanı istediğimiz şekilde değişecek. Bunun için 2 tane property yazacağız.

  1. Özellik

Private _uzerinde As Color

Property uzerinde() As Color

GetReturn _uzerinde

End GetSet(ByVal value As Color)

_uzerinde = value 'Bu kısımda kullanıcıdan renk alınıyor.End SetEnd PropertyBu özelliğimizde kullanıcı property kısmında ?uzerinde? isminde yeni bir alan görecek ve bu alan aracılığı ile bir renk seçip mouse textbox üzerinde iken seçilen renkde olmasını sağlayacak.

  1. Özellik

Private _disinda As Color

Property disinda() As Color

GetReturn _disinda

End GetSet(ByVal value As Color)

_disinda = value 'Bu kısımda kullanıcıdan renk alınıyor.End SetEnd PropertyBu özelliğimizde kullanıcı property kısmında ?disinda? isminde yeni bir alan görecek ve bu alan aracılığı ile bir renk seçip mouse textbox dışında iken seçilen renkde olmasını sağlayacak.

Bu 2 özelliği eklemek ile kullanıcıdan sadece bu ilgili özelliklerden renk bilgilerini çekiyoruz. Şimdide sırada bu almış olduğumuz renk değerlerini ilgili eventlerde işlemek kalıyor. Bunun için 2 event kullanmalıyız.

my_text_MouseEnter à faremizin textbox üzerinde olduğu eventtir.

my_text_MouseLeave à faremizin textbox dışında oldğu eventtir.

Eventler

my_text_MouseEnter

Private Sub my_text_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.MouseEnter

Me.BackColor = _uzerinde 'Burada kullanıcıdan alınan renk arkaplan rengi olarak işleniyorEnd Submy_text_MouseLeave

Private Sub my_text_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.MouseLeave

Me.BackColor = _disinda 'Burada kullanıcıdan alınan renk arkaplan rengi olarak işleniyorEnd Sub

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...