Top Ad unit 728 × 90

Konularımız

random
[post_ad]

C# ListBox Özellikleri 2024: Güncel Örnekler ve Adım Adım Rehber

 C# Programlama Diline Giriş: Başlangıçtan Uzmanlığa Adım Adım Rehber

  1. C# ListBox Özellikleri

1. Giriş

Bu makalede, C# programlama dilinde ListBox öğesinin özelliklerine ve kullanımına odaklanacağız. ListBox, kullanıcıya bir listeden bir veya birden fazla öğeyi seçme imkanı sağlar. Bu öğenin nasıl oluşturulacağını, öğe ekleme ve kaldırma işlemlerini, seçili öğeyi alma yöntemlerini ve ListBox'ın bazı özelliklerini öğreneceğiz.


2. ListBox Nedir?

ListBox, C# programlama dilinde kullanılan bir Windows Forms kontrolüdür. ListBox, kullanıcıya bir liste sunar ve kullanıcının listeden bir veya birden fazla öğeyi seçmesine olanak tanır. Bu özellikleri sayesinde, kullanıcıdan giriş almak veya bir liste sunmak için kullanılabilir.


3. ListBox Kullanımı

3.1 ListBox Oluşturma

ListBox'ı kullanabilmek için, formunuzda bir ListBox nesnesi oluşturmanız gerekmektedir. Bunun için Visual Studio gibi bir geliştirme ortamı kullanabilir veya kodla oluşturabilirsiniz. İlgili formunuzda bir ListBox kontrolü ekledikten sonra, bu kontrolü kod içerisinde kullanabilirsiniz.

3.2 ListBox'a Öğe Ekleme

ListBox'a öğe eklemek için Items koleksiyonunu kullanabiliriz. Örneğin, aşağıdaki kod parçasıyla ListBox'a öğeler ekleyebiliriz:


listBox1.Items.Add("Öğe 1"); listBox1.Items.Add("Öğe 2"); listBox1.Items.Add("Öğe 3");

Bu şekilde ListBox'a istediğiniz sayıda öğe ekleyebilirsiniz.

3.3 ListBox'tan Öğe Kaldırma

ListBox'tan öğe kaldırmak için Items koleksiyonunun Remove veya RemoveAt yöntemlerini kullanabilirsiniz. İşte bir örnek:


listBox1.Items.Remove("Öğe 2");

Bu kod parçası, ListBox'ta "Öğe 2" olarak adlandırılan öğeyi kaldıracaktır. Alternatif olarak, bir öğeyi dizinini belirterek de kaldırabilirsiniz:


listBox1.Items.RemoveAt(0);

Bu kod parçası, ListBox'ın ilk öğesini kaldıracaktır.

3.4 ListBox'ta Seçili Öğeyi Alma

ListBox'ta seçili olan öğeyi almak için SelectedIndex veya SelectedItem özelliklerini kullanabilirsiniz. İşte bir örnek:


int index = listBox1.SelectedIndex; string selected = listBox1.SelectedItem.ToString();

Bu kod parçası, seçili öğenin dizinini (SelectedIndex) ve değerini (SelectedItem) alacaktır.

3.5 ListBox Özellikleri

3.5.1 Sıralama Özelliği

ListBox'ta yer alan öğeleri belirli bir sıraya göre görüntülemek isterseniz Sorted özelliğini kullanabilirsiniz. Bu özellik, öğeleri alfabetik olarak sıralayarak veya belirli bir ölçüte göre sıralayarak kullanıcının seçim yapmasını kolaylaştırır.

3.5.2 Çoklu Seçim Özelliği

ListBox'ın SelectionMode özelliği sayesinde, kullanıcının birden fazla öğeyi seçmesine izin verebilirsiniz. Bu özellikle Single, MultiSimple ve MultiExtended olmak üzere üç farklı seçim modu vardır.

3.5.3 Kaydırma Özelliği

Eğer ListBox'ınızda çok sayıda öğe varsa, kullanıcının tüm öğeleri görmesi mümkün olmayabilir. Bu durumda, ListBox'a otomatik kaydırma özelliği ekleyebilirsiniz. Bu sayede kullanıcılar, kaydırma çubuğunu kullanarak diğer öğeleri görüntüleyebilir.

3.5.4 Görsel Özelleştirme

ListBox'ın görünümünü özelleştirmek için DrawMode ve DrawItem olaylarını kullanabilirsiniz. Bu sayede, öğelerin nasıl görüneceğini ve özel çizimler eklemeyi kontrol edebilirsiniz. Örneğin, farklı renkler veya simgeler kullanarak öğeleri daha belirgin hale getirebilirsiniz.

3.5 ListBox Bütün Özellikleri

AccessibleDescription: "AccessibleDescription" özelliği, bir Listbox kontrolünün engelli kullanıcılar için daha ayrıntılı bir açıklamasını temsil eder. Bu özellik, engelli kullanıcılar için ekran okuyucu yazılımlar veya diğer yardımcı teknolojiler tarafından kullanılabilir.

AccessibleName:"AccessibleName" özelliği, bir Listbox kontrolünün engelli kullanıcılar için erişilebilirlik adını temsil eder.

AccessibleRole: "AccessibleRole" özelliği, bir Listbox kontrolünün engelli kullanıcılar için erişilebilirlik rolünü temsil eder.

Engelli kullanıcılar için erişilebilirlik rolü, bir kontrolün belirli bir işlevi veya rolü olduğunu belirtir. Bu rol, ekran okuyucu yazılımlar veya diğer yardımcı teknolojiler tarafından kullanılarak kontrolün anlamını ve işlevini daha iyi anlamalarına yardımcı olur.

C# Listbox sınıfının "AccessibleRole" özelliği, "System.Windows.Forms.AccessibleRole" numaralandırma türüne ait değerleri kabul eder. Bu numaralandırma türü, bir kontrolün engelli kullanıcılar için erişilebilirlik rolünü belirtir. Aşağıda, "AccessibleRole" özelliği için geçerli parametre değerlerinin bir listesi bulunmaktadır:

  • None: Kontrol, erişilebilirlik rolüne sahip değil.
  • TitleBar: Kontrol, bir pencerenin başlık çubuğunu temsil eder.
  • MenuBar: Kontrol, bir menü çubuğunu temsil eder.
  • ScrollBar: Kontrol, bir kaydırma çubuğunu temsil eder.
  • Grip: Kontrol, bir tutamacı temsil eder.
  • Sound: Kontrol, bir sesi temsil eder.
  • Cursor: Kontrol, bir imleci temsil eder.
  • Caret: Kontrol, bir imleci veya göstergeyi temsil eder.
  • Alert: Kontrol, bir uyarıyı temsil eder.
  • Window: Kontrol, bir pencereyi temsil eder.
  • Client: Kontrol, bir istemci alanını temsil eder.
  • MenuPopup: Kontrol, bir açılır menüyü temsil eder.
  • MenuItem: Kontrol, bir menü öğesini temsil eder.
  • ToolTip: Kontrol, bir araç ipucunu temsil eder.
  • Application: Kontrol, bir uygulamayı temsil eder.
  • Document: Kontrol, bir belgeyi temsil eder.
  • Pane: Kontrol, bir paneli temsil eder.
  • Chart: Kontrol, bir grafik veya diyagramı temsil eder.
  • Dialog: Kontrol, bir iletişim kutusunu temsil eder.
  • Border: Kontrol, bir sınırı temsil eder.
  • Grouping: Kontrol, bir gruplamayı veya bölümü temsil eder.
  • Separator: Kontrol, bir ayırıcıyı temsil eder.
  • ToolBar: Kontrol, bir araç çubuğunu temsil eder.
  • StatusBar: Kontrol, bir durum çubuğunu temsil eder.
  • Table: Kontrol, bir tabloyu temsil eder.
  • ColumnHeader: Kontrol, bir sütun başlığını temsil eder.
  • RowHeader: Kontrol, bir satır başlığını temsil eder.
  • Column: Kontrol, bir sütunu temsil eder.
  • Row: Kontrol, bir satırı temsil eder.
  • Cell: Kontrol, bir hücreyi temsil eder.
  • Link: Kontrol, bir bağlantıyı temsil eder.
  • HelpBalloon: Kontrol, bir yardım balonunu temsil eder.
  • Character: Kontrol, bir karakteri temsil eder.
  • List: Kontrol, bir liste veya liste öğesini temsil eder.
  • ListItem: Kontrol, bir liste öğesini temsil eder.
  • OutlineButton: Kontrol, bir açılır düğmeyi temsil eder.

Yukarıda belirtilen değerler, "AccessibleRole" özelliği için geçerli parametre değerleridir. İhtiyaçlarınıza göre uygun olan erişilebilirlik rolünü seçebilirsiniz.

AllowDrop: "AllowDrop" özelliği, bir kontrolün üzerine başka bir kontrol veya veri öğesinin sürüklenip bırakılabilmesini belirler. Bir kontrolün AllowDrop özelliği true olarak ayarlandığında, sürüklenen nesneler bu kontrol üzerine bırakılabilir.

İşte "AllowDrop" özelliğinin doğru tanımı:

AllowDrop: Bu özellik, Listbox'ın üzerine bir nesnenin sürüklenip bırakılmasına izin verip vermediğini kontrol eder.

Anchor:Anchor özelliği, bir kontrolün, kapsayıcısı içindeki yerleşimini ve boyutunu nasıl ayarlayacağını belirler.

Anchor özelliği, Control sınıfından miras alınır ve "System.Windows.Forms.AnchorStyles" numaralandırma türünden değerler kullanır. Bu numaralandırma türü, bir kontrolün dört köşesini veya dört kenarını temsil eder.

Anchor özelliğine atanabilen değerler aşağıdaki gibidir:

  • None: Kontrol, kapsayıcısı ile bağlantılı olarak boyutlandırılmaz veya yerleştirilmez.
  • Top: Kontrol, üst kenarına kapsayıcısının üst kenarına sabitlenir ve boyutlandırılırken yükseklik değeri değiştirilmez.
  • Bottom: Kontrol, alt kenarına kapsayıcısının alt kenarına sabitlenir ve boyutlandırılırken yükseklik değeri değiştirilmez.
  • Left: Kontrol, sol kenarına kapsayıcısının sol kenarına sabitlenir ve boyutlandırılırken genişlik değeri değiştirilmez.
  • Right: Kontrol, sağ kenarına kapsayıcısının sağ kenarına sabitlenir ve boyutlandırılırken genişlik değeri değiştirilmez.
  • TopLeft: Kontrol, sol üst köşesine kapsayıcısının sol üst köşesine sabitlenir ve boyutlandırılırken genişlik ve yükseklik değerleri değiştirilmez.
  • TopRight: Kontrol, sağ üst köşesine kapsayıcısının sağ üst köşesine sabitlenir ve boyutlandırılırken genişlik ve yükseklik değerleri değiştirilmez.
  • BottomLeft: Kontrol, sol alt köşesine kapsayıcısının sol alt köşesine sabitlenir ve boyutlandırılırken genişlik ve yükseklik değerleri değiştirilmez.
  • BottomRight: Kontrol, sağ alt köşesine kapsayıcısının sağ alt köşesine sabitlenir ve boyutlandırılırken genişlik ve yükseklik değerleri değiştirilmez.
  • All: Kontrol, kapsayıcısının her dört kenarına sabitlenir ve boyutlandırılırken genişlik ve yükseklik değerleri değiştirilmez.

BackColor:"BackColor", C# Listbox sınıfının bir özelliğidir ve bir Listbox kontrolünün arka plan rengini belirler. "BackColor" özelliği, bir renk değeri kabul eder.

Örneğin, aşağıdaki gibi "BackColor" özelliğini kullanarak bir Listbox kontrolünün arka plan rengini ayarlayabilirsiniz:

BorderStyle:"BorderStyle", C# Listbox sınıfının bir özelliğidir ve bir Listbox kontrolünün kenarlık stilini belirler. "BorderStyle" özelliği, "System.Windows.Forms.BorderStyle" numaralandırma türünden değerler alır.

Aşağıda, "BorderStyle" özelliğinin kabul ettiği değerlerin bir listesi bulunmaktadır:

  • None: Listbox kontrolü için kenarlık çizilmez.
  • FixedSingle: Listbox kontrolü için tek bir çizgi ile kenarlık oluşturulur.
  • Fixed3D: Listbox kontrolü için kabartmalı ve oymalı bir efektle kenarlık oluşturulur.
  • FixedDialog: Listbox kontrolü için diyalog kutusu tarzında kenarlık oluşturulur.
  • FixedToolWindow: Listbox kontrolü için araç penceresi tarzında kenarlık oluşturulur.
  • Sizable: Listbox kontrolü için boyutlandırılabilir kenarlık oluşturulur.

CausesValidation:"CausesValidation", C# Listbox sınıfının bir özelliğidir. Bu özellik, bir kontrolün odak kaybetmesi durumunda doğrulama olaylarının tetiklenip tetiklenmeyeceğini belirler.

Varsayılan olarak, "CausesValidation" özelliği Listbox kontrolünde false olarak ayarlanmıştır. Bu durumda, Listbox kontrolü tıklanıp odak kaybedildiğinde doğrulama olayları tetiklenmez.

Ancak, "CausesValidation" özelliği true olarak ayarlandığında, Listbox kontrolü tıklanıp odak kaybedildiğinde doğrulama olayları tetiklenebilir. Bu durumda, Listbox kontrolünün odak kaybetmesi doğrulama olaylarını tetikleyebilir ve kullanıcının girişlerini doğrulamaya yönlendirebilir.

ColumnWidth:C# programlama dilinde, ListBox kontrolünün ColumnWidth özelliği, ListBox'ın sütunlarının genişliğini belirlemek için kullanılır. Bu özellik, ListBox'ın çoklu sütunlu bir görünüme sahip olmasını sağlar.

ColumnWidth özelliği, piksel veya karakter birimiyle belirtilebilir. Piksel birimi kullanıldığında, her sütunun genişliği belirli bir piksel değerine ayarlanır. Karakter birimi kullanıldığında ise, her sütunun genişliği belirli bir karakter sayısına göre otomatik olarak ayarlanır.

Aşağıda bir örnek kullanım verilmektedir:


listBox1.ColumnWidth = 100; // Sütun genişliğini 100 piksel olarak ayarlar

Bu örnekte, listBox1 isimli ListBox kontrolünün sütunlarının genişliği 100 piksel olarak belirlenir. Bu sayede, ListBox'ta çoklu sütunlu bir görünüm oluşturulabilir ve sütunların genişlikleri istenilen şekilde ayarlanabilir.

ColumnWidth özelliği, ListBox'ın Datasource özelliği ile veri bağlantısı kurulduğunda veya Items koleksiyonuna öğeler eklenerek kullanıldığında etkilidir.

ContextMenuStrip:Bu özellik, bir ListBox kontrolüne bir bağlam menüsü (context menu) atamak için kullanılır.

Cursor:Cursor özelliği, bir kontrolün üzerine fare imleci (cursor) yerleştirildiğinde görüntülenecek olan imlecin türünü belirler. Cursor özelliği, "System.Windows.Forms.Cursor" türünden bir değer kabul eder.

İşte Cursor özelliğinin bazı yaygın kullanılan değerleri:

  • Default: Varsayılan imleç tipini temsil eder.
  • Arrow: İmlecin ok şeklinde görüntülenmesini temsil eder.
  • Cross: İmlecin haç şeklinde görüntülenmesini temsil eder.
  • Hand: İmlecin el şeklinde görüntülenmesini temsil eder.
  • Help: İmlecin yardım şeklinde görüntülenmesini temsil eder.
  • IBeam: İmlecin metin yazma (metin seçme) şeklinde görüntülenmesini temsil eder.
  • SizeAll: İmlecin tüm yönlerde (tüm kenarlarda) boyutlandırma şeklinde görüntülenmesini temsil eder.
  • SizeNS: İmlecin yalnızca dikey (üst ve alt kenarlar) boyutlandırma şeklinde görüntülenmesini temsil eder.
  • SizeWE: İmlecin yalnızca yatay (sol ve sağ kenarlar) boyutlandırma şeklinde görüntülenmesini temsil eder.
  • WaitCursor: İmlecin bekleme (yükleniyor) şeklinde görüntülenmesini temsil eder.

DataSource: C# programlama dilinde, ListBox kontrolünün DataSource özelliği, ListBox'ın veri kaynağını belirlemek için kullanılır. Bu özellik, ListBox'a veri sağlamak için bir koleksiyon veya veri tabanı bağlantısı gibi bir veri kaynağını atamanızı sağlar.

DataSource özelliği, IEnumerable veya IBindingList gibi veri bağlama arabirimlerini uygulayan bir nesneyle kullanılabilir. Bu veri kaynağı nesnesi, ListBox'ın öğelerini temsil eden verileri sağlar. ListBox, veri kaynağındaki öğeleri otomatik olarak listeleyerek kullanıcıya sunar.

Aşağıda bir örnek kullanım verilmektedir:


List<string> veriListesi = new List<string> { "Öğe 1", "Öğe 2", "Öğe 3" }; listBox1.DataSource = veriListesi;

Bu örnekte, veriListesi adında bir List<string> nesnesi oluşturulur ve içerisine bazı öğeler eklenir. Sonra, listBox1 isimli ListBox kontrolünün DataSource özelliği, veriListesi nesnesine atanır. ListBox, veriListesi koleksiyonundaki öğeleri otomatik olarak listeler ve kullanıcıya sunar.

DataSource özelliği, ListBox'ın veri bağlama (data binding) yeteneklerinden faydalanmanızı sağlar. Bu sayede dinamik olarak veri kaynağındaki değişiklikleri ListBox üzerinde yansıtabilirsiniz.

DisplayMember:C# programlama dilinde, ListBox kontrolünün DisplayMember özelliği, ListBox'ta görüntülenecek öğe özelliğini belirlemek için kullanılır. Bu özellik, ListBox'ın veri kaynağındaki öğelerin hangi özelliklerinin ListBox'ta görüntüleneceğini kontrol etmenizi sağlar.

DisplayMember özelliğine bir dize değeri atanır. Bu dize değeri, veri kaynağındaki öğelerin içerisinde yer alan bir özellik adını temsil eder. ListBox, veri kaynağındaki her öğe için belirtilen özellik değerini alır ve ListBox'ta görüntüler.

Aşağıda bir örnek kullanım verilmektedir:


public class Ogrenci { public string Ad { get; set; } public string Soyad { get; set; } } List<Ogrenci> ogrenciListesi = new List<Ogrenci> { new Ogrenci { Ad = "Ali", Soyad = "Yılmaz" }, new Ogrenci { Ad = "Ayşe", Soyad = "Kara" }, new Ogrenci { Ad = "Mehmet", Soyad = "Demir" } }; listBox1.DisplayMember = "Ad"; // ListBox'ta Ad özelliği görüntülenecek listBox1.DataSource = ogrenciListesi;

Bu örnekte, Ogrenci adında bir sınıf oluşturulur ve içerisinde Ad ve Soyad özellikleri bulunur. Ardından, ogrenciListesi adında bir List<Ogrenci> nesnesi oluşturulur ve içerisine birkaç öğe eklenir. ListBox kontrolünün DisplayMember özelliği, "Ad" olarak ayarlanır, bu sayede ListBox'ta her öğe için Ad özelliği görüntülenir.

DisplayMember özelliği, ListBox'ın veri bağlama yeteneklerini kullanırken veri kaynağındaki öğelerin görüntülenme davranışını kontrol etmenizi sağlar.


Dock:Dock özelliği, bir ListBox kontrolünün bir kapsayıcının içindeki yerleşimini belirler.

Dock özelliği, "System.Windows.Forms.DockStyle" numaralandırma türünden değerler alır. Bu değerler, kontrolün yerleşimini belirlemek için kullanılır.

Aşağıda, Dock özelliğinin kabul ettiği değerlerin bir listesi bulunmaktadır:

  • None: ListBox kontrolü hiçbir yöne bağlı olmadan kapsayıcının içinde serbestçe yer alır. Boyutları ve konumu ayrıca belirlenmelidir.
  • Top: ListBox kontrolü, kapsayıcının üst kenarına bağlı olarak yerleşir ve genişlik otomatik olarak kapsayıcının genişliğiyle eşleşir. Yükseklik ayarlaması yapılır.
  • Bottom: ListBox kontrolü, kapsayıcının alt kenarına bağlı olarak yerleşir ve genişlik otomatik olarak kapsayıcının genişliğiyle eşleşir. Yükseklik ayarlaması yapılır.
  • Left: ListBox kontrolü, kapsayıcının sol kenarına bağlı olarak yerleşir ve yükseklik otomatik olarak kapsayıcının yüksekliğiyle eşleşir. Genişlik ayarlaması yapılır.
  • Right: ListBox kontrolü, kapsayıcının sağ kenarına bağlı olarak yerleşir ve yükseklik otomatik olarak kapsayıcının yüksekliğiyle eşleşir. Genişlik ayarlaması yapılır.
  • Fill: ListBox kontrolü, kapsayıcının tamamını kaplayacak şekilde genişlik ve yükseklik ayarlaması yapar.
DrawMode:C# programlama dilinde, ListBox kontrolünün DrawMode özelliği, ListBox'ta öğelerin nasıl çizileceğini belirlemek için kullanılır. Bu özellik, ListBox'ta özel çizimler yapmanızı ve öğelerin görünümünü özelleştirmenizi sağlar.

DrawMode özelliği, DrawMode enum değerlerinden birini alır. İşte DrawMode enum'unun bazı değerleri:

  • Normal: ListBox, varsayılan çizim yöntemini kullanır. Öğeleri varsayılan görünümleriyle listeler.
  • OwnerDrawFixed: ListBox, öğelerin çizimini tamamen sizin tarafınızdan kontrol etmenizi sağlar. Tüm öğeler için aynı boyutta ve görünümde çizim yapabilirsiniz.
  • OwnerDrawVariable: ListBox, öğelerin çizimini tamamen sizin tarafınızdan kontrol etmenizi sağlar. Her öğe için farklı boyutlarda ve görünümlerde çizim yapabilirsiniz.

Aşağıda bir örnek kullanım verilmektedir:


listBox1.DrawMode = DrawMode.OwnerDrawFixed; // Öğelerin çizimi tamamen size ait olacak listBox1.DrawItem += ListBox1_DrawItem; // DrawItem olayına çizim kodunu ekleyin private void ListBox1_DrawItem(object sender, DrawItemEventArgs e) { e.DrawBackground(); // Arka planı çiz if (e.Index >= 0) // Geçerli öğe indeksi kontrolü { // Çizim kodunu buraya ekleyin string itemText = listBox1.Items[e.Index].ToString(); e.Graphics.DrawString(itemText, e.Font, new SolidBrush(e.ForeColor), e.Bounds); } e.DrawFocusRectangle(); // Odaklanma dikdörtgenini çiz }

Bu örnekte, ListBox kontrolünün DrawMode özelliği OwnerDrawFixed olarak ayarlanır, böylece öğelerin çizimini tamamen kendiniz kontrol edebilirsiniz. ListBox1_DrawItem adında bir yöntem oluşturulur ve DrawItem olayına bu yöntem eklenir. Bu yöntemde, her öğe için çizim kodu yazılır. Örneğin, öğe metnini alır ve öğeyi belirtilen görünümde çizer.

DrawMode özelliği, ListBox'ın öğelerini özelleştirilmiş bir görünümle çizmek için kullanılır. Böylece, öğeleri istediğiniz şekilde çizebilir, renklendirebilir veya simgeler ekleyebilirsiniz.

Enabled:Enabled özelliği, bir ListBox kontrolünün etkinleştirilip etkisizleştirilmesini belirler.

Enabled özelliği, bir bool değer kabul eder. Varsayılan olarak, ListBox kontrolünün Enabled özelliği true olarak ayarlanmıştır, yani kontrol etkin durumdadır. Bu durumda, kullanıcı etkileşimde bulunabilir ve ListBox kontrolü normal şekilde görüntülenir.

Eğer Enabled özelliği false olarak ayarlanırsa, ListBox kontrolü etkisiz hale gelir. Bu durumda, kontrol üzerindeki kullanıcı etkileşimi devre dışı bırakılır ve kontrol grileştirilerek devre dışı olduğu belirtilir. Özellikle etkisiz hale getirilen kontrol üzerindeki ListBox , ListBox girişi veya diğer etkileşimlerin olayları tetiklenmez.

Font Özelliği:Font özelliği, bir ListBox kontrolünün metin fontunu belirler.

Font özelliği, "System.Drawing.Font" türünden bir değer alır. Bu değer, metin fontunu, boyutunu, stilini ve diğer özelliklerini içerir.

ForeColor:"ForeColor" özelliği, bir ListBox kontrolünün metin rengini belirler.

ForeColor özelliği, "System.Drawing.Color" türünden bir değer alır. Bu değer, metin rengini temsil eden bir renk değerini içerir.

FormatString: FormatString özelliği, ListBox'ta görüntülenen öğelerin biçimlendirilmesini sağlar.

FormatString özelliği, ListBox'taki her öğenin görüntüsünü belirli bir format kullanarak değiştirmenizi sağlar. Bu, öğelerin metinsel temsilini özelleştirme imkanı sunar.

Aşağıda bir örnek kullanım verilmektedir:


listBox1.FormatString = "Ad: {0} | Yaş: {1}"; listBox1.Items.Add(new Person { Ad = "Ahmet", Yas = 25 });

Bu örnekte, FormatString özelliği "Ad: {0} | Yaş: {1}" olarak ayarlanır. Ardından, ListBox'a bir Person nesnesi eklenir ve ListBox'ta bu öğe "Ad: Ahmet | Yaş: 25" formatında görüntülenir.

FormatString özelliğini kullanarak ListBox'ta görüntülenen öğelerin biçimini özelleştirebilir ve belirli bir formatı temsil etmelerini sağlayabilirsiniz. Bu sayede, öğeleri istediğiniz şekilde düzenleyebilir ve gösterilecek bilgileri özelleştirebilirsiniz.

FormattingEnabled:C# Listbox'ın FormattingEnabled özelliği, liste kutusundaki öğelerin metin biçimlendirilmesine izin veren bir özelliğidir. Bu özellik, listeye eklenen öğelerin görüntülenme şeklini kontrol etmenizi sağlar.

FormattingEnabled özelliği varsayılan olarak true olarak ayarlanır. Bu durumda, liste kutusundaki her öğe metin olarak görüntülenir. Ancak, FormattingEnabled özelliği false olarak ayarlandığında, liste kutusundaki öğelerin her biri özel olarak biçimlendirilebilir. Bu, öğeleri özelleştirilmiş biçimlere sahip kontrol öğeleri gibi görüntülemenize olanak tanır.

Örneğin, FormattingEnabled özelliğini kullanarak liste kutusunda bazı öğeleri kalın veya italik olarak görüntüleyebilirsiniz. Bunu yapmak için, liste kutusuna öğe eklerken veya her öğeyi biçimlendirmek için Listbox.ItemFormat eventini kullanabilirsiniz. Bu olay, her öğe görüntülenmeden önce tetiklenir ve öğenin görüntülenme biçimini özelleştirmenize olanak tanır.

Aşağıda, FormattingEnabled özelliğini kullanarak bir Listbox'ta özel biçimlendirilmiş öğeleri nasıl görüntüleyebileceğinizi gösteren bir örnek bulunmaktadır:


// FormattingEnabled özelliğini false olarak ayarlayın listBox1.FormattingEnabled = false; // Listbox'a özel biçimlendirilmiş öğeler ekleyin listBox1.Items.Add("Normal Öğe"); listBox1.Items.Add("Kalın Öğe"); listBox1.Items.Add("İtalik Öğe"); // Listbox.ItemFormat olayını kullanarak her öğenin görüntülenme biçimini özelleştirin listBox1.Format += (sender, e) => { if (e.ListItemIndex == 1) // Kalın öğeyi belirlemek için indeksi kontrol edin { e.TextFont = new Font(listBox1.Font, FontStyle.Bold); // Kalın fontu ayarlayın } else if (e.ListItemIndex == 2) // İtalik öğeyi belirlemek için indeksi kontrol edin { e.TextFont = new Font(listBox1.Font, FontStyle.Italic); // İtalik fontu ayarlayın } };

Bu örnek, ListBox'ın FormattingEnabled özelliğini false olarak ayarlar ve ardından Listbox'a üç öğe ekler. İndekslerini kontrol ederek her öğenin görüntülenme biçimini özelleştiren bir Format olayı da tanımlanmıştır. Bu şekilde, "Normal Öğe" normal bir şekilde görüntülenirken, "Kalın Öğe" kalın olarak ve "İtalik Öğe" italik olarak görüntülenir.

FormattingEnabled özelliği, Listbox'ı daha esnek ve özelleştirilebilir bir şekilde kullanmanızı sağlar. Her bir öğenin görüntülenme biçimini kontrol ederek, daha çeşitli kullanım senaryolarına uyarlanabilir listeler oluşturabilirsiniz.

  • HorizontalExtent: Yatay kaydırma çubuğunun genişliğini kontrol eder. Bu özellik, Listbox içinde görüntülenebilecek maksimum yatay genişliği belirlemenize olanak tanır.

  • HorizontalScrollbar: Yatay kaydırma çubuğunun görüntülenip görüntülenmeyeceğini belirler. Bu özellik true olarak ayarlanırsa, içeriği yatay olarak kaydırmak için bir yatay kaydırma çubuğu görüntülenir.

  • ImeMode: IME (Input Method Editor) modunu belirler. Bu özellik, kullanıcının metin girişi sırasında hangi IME modunun kullanılacağını kontrol etmenize olanak tanır. Örneğin, metin girişi sırasında IME'nin sadece rakamları kabul etmesini veya sadece Latin harflerini kabul etmesini sağlayabilirsiniz.

  • C# Listbox kontrolünün ImeMode özelliği aşağıdaki parametreleri alır:

ImeMode.Off: IME devre dışı. Metin girişi için IME kullanılamaz.

ImeMode.On: IME etkin. Metin girişi için IME kullanılabilir.

ImeMode.Disable: IME devre dışı. Metin girişi için IME kullanılamaz.

ImeMode.Hiragana: IME modu Hiragana olarak ayarlanır. Sadece Japonca için geçerlidir.

ImeMode.FullKatakana: IME modu Tam Katakana olarak ayarlanır. Sadece Japonca için geçerlidir.

ImeMode.Katakana: IME modu Katakana olarak ayarlanır. Sadece Japonca için geçerlidir.

ImeMode.KatakanaHalf: IME modu Yarım Katakana olarak ayarlanır. Sadece Japonca için geçerlidir.

ImeMode.Alpha: IME modu Alfa olarak ayarlanır. Sadece Korece için geçerlidir.

ImeMode.AlphaFull: IME modu Tam Alfa olarak ayarlanır. Sadece Korece için geçerlidir.

ImeMode.Hangul: IME modu Hangul olarak ayarlanır. Sadece Korece için geçerlidir.

ImeMode.HangulFull: IME modu Tam Hangul olarak ayarlanır. Sadece Korece için geçerlidir.


  • IntegralHeight: Listbox'ın yüksekliğini, tam öğe yüksekliği katları olarak ayarlar veya belirler. Bu özellik true olarak ayarlanırsa, Listbox yüksekliği otomatik olarak öğe yüksekliği katlarına ayarlanır ve yarı öğe yükseklikleri ile kısmi öğeler görüntülenmez.

  • ItemHeight: Listbox içindeki öğelerin yüksekliğini belirler. Tüm öğelerin aynı yükseklikte görüntülenmesini sağlamak için bu özelliği kullanabilirsiniz.

  • Items: Listbox içindeki öğelerin koleksiyonunu temsil eder. Bu koleksiyon aracılığıyla öğeleri ekleyebilir, kaldırabilir veya düzenleyebilirsiniz.

  • Location: Listbox'ın konumunu belirler veya alır. Konum, Listbox'ın üst sol köşesinin form içindeki koordinatlarını belirtir.

  • Locked: Listbox'ın içeriğini veya seçimini değiştirilmez hale getirir veya geri alır. Bu özellik true olarak ayarlanırsa, kullanıcı Listbox içindeki öğeleri seçemez veya düzenleyemez.

  • Margin: Listbox etrafındaki boşluğun boyutunu belirler. Bu özellik, Listbox'ın etrafına eklenen boşluğu kontrol etmenizi sağlar.

  • MaximumSize: Listbox'ın maksimum boyutunu belirler veya alır. Bu özellik, Listbox'ın en fazla ne kadar büyüyebileceğini sınırlar.

  • MinimumSize: Listbox'ın minimum boyutunu belirler veya alır. Bu özellik, Listbox'ın en az ne kadar küçülebileceğini sınırlar.

  • Modifiers: Klavye veya fare girişlerinde kullanılan özel tuş kombinasyonlarını belirler. Bu özellik, bir tuşa Shift, Ctrl veya Alt tuşları ile birlikte basıldığında yapılacak işlemi kontrol etmenizi sağlar.

  • MultiColumn: Listbox'ı çok sütunlu bir görünümde görüntülemek için true olarak ayarlar veya alır. Bu özellik true olarak ayarlandığında, öğeler yatay olarak birden çok sütunda düzenlenir.

  • RightToLeft: Listbox'ın sağdan sola doğru düzenlenip düzenlenmeyeceğini belirler. Bu özellik true olarak ayarlandığında, Listbox içeriği sağdan sola doğru görüntülenir.

  • ScrollAlwaysVisible: Dikey kaydırma çubuğunun her zaman görüntülenip görüntülenmeyeceğini belirler. Bu özellik true olarak ayarlanırsa, içerik yeterince küçük olsa bile dikey kaydırma çubuğu görüntülenir.

  • SelectionMode: Listbox içindeki öğelerin seçim modunu belirler. Örneğin, Single seçim modunda yalnızca bir öğe seçilebilirken, Multiple seçim modunda birden çok öğe seçilebilir.

  • Size: Listbox'ın boyutunu belirler veya alır. Boyut, genişlik ve yükseklik özelliklerinden oluşur.

  • Sorted: Listbox içindeki öğelerin sıralanıp sıralanmayacağını belirler. Bu özellik true olarak ayarlanırsa, öğeler alfabetik olarak sıralanır.

  • TabIndex: Listbox'ın sekme dizilimindeki sırasını belirler. Bu özellik, formda klavye ile seçilebilir öğeler arasında geçiş yapılırken Listbox'ın sırasını kontrol eder.

  • TabStop: Listbox'ın tab duraklarında gezinilebilir olup olmadığını belirler. Bu özellik true olarak ayarlanırsa, Listbox klavye tab tuşuna basıldığında seçilebilir hale gelir.

  • Tag: Listbox'a özel veri veya nesneleri iliştirmek için kullanılan bir özelliktir. Herhangi bir veriyi Listbox ile ilişkilendirmek için bu özelliği kullanabilirsiniz.

  • UseTabStops: Listbox'ın sekme duraklarını kullanıp kullanmayacağını belirler. Bu özellik true olarak ayarlandığında, klavye ile tab tuşuna basıldığında Listbox içindeki öğeler arasında geçiş yapabilirsiniz.

  • UseWaitCursor: Bekleme imlecinin Listbox üzerinde kullanılıp kullanılmayacağını belirler. Bu özellik true olarak ayarlandığında, Listbox üzerinde işlem gerçekleştirildiğinde beklemek için imleç kullanılır.

  • ValueMember: Veri bağlama işlemi sırasında Listbox'ta görüntülenecek olan öğenin değerini belirler. Bu genellikle bir veri kaynağından alınan bir özelliktir ve öğelerin değerlerini temsil eder.

  • Visible: Listbox'ın görünür olup olmadığını belirler. Bu özellik true olarak ayarlanırsa, Listbox görünür hale gelir ve ekranda görüntülenir. Aksi takdirde, false olarak ayarlanırsa, Listbox gizlenir ve ekranda görünmez olur.

3.6 Olaylar ve ListBox

ListBox üzerinde çeşitli olaylar kullanarak kullanıcı etkileşimlerini kontrol edebilirsiniz. Örneğin, SelectedIndexChanged olayı, kullanıcının ListBox'ta seçili öğe değiştirdiğinde tetiklenebilir. Bu olayı kullanarak, seçim değişikliğine göre bazı işlemler gerçekleştirebilirsiniz.


4. ListBox İpuçları ve Püf Noktaları

  • ListBox'a çok sayıda öğe eklemek yerine, büyük öğeleri gruplandırarak kullanıcı dostu bir deneyim sunabilirsiniz.
  • ListBox'ta seçili olan öğeleri işaretlemek veya vurgulamak için görsel özelleştirmeleri kullanabilirsiniz.
  • ListBox'ın kaydırma özelliğini etkinleştirmek, kullanıcıların tüm öğeleri görmelerini sağlar.
  • ListBox'ı veri bağlama (data binding) ile kullanarak dinamik olarak öğe listesini güncelleyebilirsiniz.
  • Olayları kullanarak, kullanıcının ListBox ile etkileşimini kontrol edebilir ve gerektiğinde işlemler yapabilirsiniz.

5. Özet

Bu makalede, C# programlama dilinde ListBox öğesinin özelliklerini ve kullanımını ele aldık. ListBox'ı nasıl oluşturacağınızı, öğeler ekleyip kaldırmanızı, seçili öğeyi alma yöntemlerini ve ListBox'ın bazı özelliklerini öğrendiniz. Ayrıca, ListBox'ın nasıl görsel olarak özelleştirilebileceğini ve kullanıcının etkileşimini nasıl kontrol edebileceğinizi öğrendiniz.


Sıkça Sorulan Sorular (FAQs)

1. ListBox'a nasıl resim veya simge ekleyebilirim?

ListBox'a resim veya simge eklemek için, ListBox'ın özel çizim olaylarını kullanabilirsiniz. DrawItem olayını dinleyerek, her öğe için özel bir çizim yapabilir ve resim veya simgeleri öğelere ekleyebilirsiniz.

2. ListBox'ı nasıl veritabanı verileriyle doldurabilirim?

ListBox'ı veritabanı verileriyle doldurmak için öncelikle veritabanı bağlantısını kurmanız gerekmektedir. Ardından, veritabanından verileri çekip ListBox'ın Items koleksiyonuna ekleyebilirsiniz. Bu işlemi döngü kullanarak gerçekleştirebilirsiniz.

3. ListBox'ta birden fazla öğe seçmek için nasıl bir kod kullanabilirim?

ListBox'ın SelectionMode özelliğini MultiSimple veya MultiExtended olarak ayarlamanız gerekmektedir. Bu şekilde, kullanıcı birden fazla öğeyi seçebilir. Seçili öğeleri almak için SelectedItems özelliğini kullanabilirsiniz.

4. ListBox'ın öğelerini alfabetik olarak nasıl sıralayabilirim?

ListBox'ın Sorted özelliğini true olarak ayarladığınızda, ListBox öğeleri otomatik olarak alfabetik olarak sıralanır. Bu sayede kullanıcının seçim yapması kolaylaşır.

5. ListBox'ta seçili öğe değiştiğinde nasıl bir işlem yapabilirim?

ListBox'ın SelectedIndexChanged olayını kullanarak, seçili öğe değiştiğinde bir işlem gerçekleştirebilirsiniz. Bu olayı dinleyerek, seçili öğenin yeni değerini alabilir ve buna göre işlemler yapabilirsiniz.

Hiç yorum yok:

All Rights Reserved by Csharp Eğitim Dünyası © 2023 - 2023
Powered By Ebubekir Bastama(EBS), Designed by EÇK Yazılım

İletişim Formu

Ad

E-posta *

Mesaj *

Blogger tarafından desteklenmektedir.