pess1nu5 adlı üyeden alıntı: mesajı görüntüle
Merhaba c#da yeniyim ve öğrenmeye çalışıyorum, bir listboxum var ve listbox üzerinde de 4 adet buton var. listboxdan seçilen veriye göre işlem yapıyor bu butonlar.
Listede a-b-c verileri olsun a verisini seçip 1. butona bastığımda bu butonun renginin değişmesini istiyorum ancak bu listedeki tüm verilerin 1. butonunun rengini değiştiriyor işin içinden çıkamadım acaba vakti olan hocalarımın ilgilenme şansı var mıdır okuduğunuz için teşekkürler.
Butonların nameleri vardır, bu nameler üzerinden onlara erişirsin. Örneğin 4 adet buton ekledin, bu butonların property yani özelliklerini nameleri ile erişerek değiştirirsin. Uzun süredir c# yazmadığım için kodun yazımını(syntax) hatırlamıyorum fakat butonları ilk oluşturduğunda Button1 ismiyle oluşur, diğer butonlarda aynı şekilde Button2, Button3 diye gider, senin burada butonların textlerinin(butonun üzerinde yazan isim) yanı sırada onların namelerini değiştirerek veya değiştirmeden varsayılan haliyle onlara erişmeni gerektirir.
Örneğin bir buton oluşturdun butonun üstüne Button yazar ve namei Button1 olarak varsayılan isimlendirilr. Sen bu butonun üzerindeki metni Button1.text = "yeni text adı" şeklinde değiştirirsin. Yazım şekli bu olmayabilir tam hatırlamıyorum, aynı şekilde arka plan rengi ve metnini de aynı şekilde değiştirirsin. Eğer buton nameini isimlendirirsen buton sayını arttıkça onlara buton2 buton3 diye ulaşmak yerine butonekle butongönder diye erişirsin ve bu da kodu okumanı kolaylaştırır.

O yüzden şu şekilde bir yol izleyebilirsin. Butonu ekle araçlardan sürükle at forma, form üzerinde butonun üzerine tıkla, sağdan butona isim ver örneğin ekle butonu olsun. Bu butonun üzerinde yazan metni Ekle olarak, butonun nameini ise btnEkle olarak değiştir. Daha sonra sen bu koda tıklandığı zaman renk değiştirmesini istediğin için form üzerinde butona çift tıkla, o sana code üzerinde butonun çift tıklama fonksiyonunu oluşturur. btnEkle onclick gibi bir şey yazar. Butonun scopu içeriğine de btnEkle.text = "yeni ekle metni" dersen butona tıklandığında metinini nameine erişerek değiştirmiş olursun. Senin istediğin şey arka planını değiştirmek ise btnEkle.background = color.red; gibi bir komutla da tıklandığı zaman arka planını kırmızı yapabilirsin.

name vermediysen button1.BackColor = Color.Red; şu şekilde arka plan değiştirirsin sanırım . Chat gpt kullanabilir veya youtube da benzer videolara bakabilirsin.