Sümeyye Kök

Posts Tagged ‘c# listboxları aynı anda seçme

1-C# ile Acces bağlantısı kurmuş ve projenizde emin adımlarla ilerlerken ListView’de tüm satırın  tek tıklamayla seçilmesini istersiniz:

Bunun için ListView’e tıklayıp Properties bölümünden FullRowSelect özelliğini True olarak ayarlamamız yeterli olacaktır.

Daha sonra tıkladığınız verilerin TextBox’larınıza aktarılması için ise;

private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
//listviewden satır seçip textboxa aktarma kodu:)
if (listView1.SelectedItems.Count > 0)
{
textBox1.Text = listView1.SelectedItems[0].SubItems[0].Text;
textBox2.Text = listView1.SelectedItems[0].SubItems[1].Text;
textBox3.Text = listView1.SelectedItems[0].SubItems[2].Text;

}

bu kod parçacığını kullanmanız yeterlidir.Ancak direk kodları yapıştırırsak çalışmaz.Yine ListView’in Properties->Events sekmesinden SelectedIndexChanged : listView1_SelectedIndexChanged seçili olarak tıklamanız ve açılan kod sayfasına bu kodu yapıştırmanız yeterli olacaktır.

2-Eğer Otomasyon işlemi yapıyorsanız ve bir text dosyasından veri okuyup yazıyorsanız orada ise listBox ta aynı işlemi yapmak isterseniz:
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int index = (sender as ListBox).SelectedIndex;

listBox1.SelectedIndex = index;
listBox2.SelectedIndex = index;
listBox3.SelectedIndex = index;

şeklinde olmalıdır.Kolay gelsin..

 

 

C#’ ta geliştirdiğim bir otomasyondan aklımda kalanları paylaşmak istedim.Fazla oyalanmadan direk kodlara geçiyorum step step gidelim:(Çok fazla listbox,textbox kullanmış olduğum projenin sadece örnek teşkil edecek kısımlarını paylaşıyorum:)

1-Öncelikle using System.IO kütüphanesini direk programın başına ekliyoruz.

2-Eğer dosya okuma işlemi yapmak istiyorsak şu kodlar işe yarayacaktır:
private void Form2_Load(object sender, EventArgs e)

{      //Formlar üzerinde çalştım.ve Load kısmına bu kodları yazdım(Açıklamaları takip edelim.)

FileStream fs;           //Dosya açmak için değişken oluşturdum.
StreamReader sr;   //Dosya okumak için değişken oluşturdum.
string satir;
string dosya_adi;
char[] karakter = new char[1];   //Dosyadan birer birer okuma yapacaz.
karakter[0] = ‘*’;                              //Kayıtarın karışmaması için ben * işaretii ayıraç olarak kullandım.
string[] dizi = new string[20];
dosya_adi = “C:\OtoProje\musteri.txt”;   //Dosya yolunu belirttik.

fs = new FileStream(dosya_adi, FileMode.Open, FileAccess.Read);   //Dosyayı açma ve okuma işlemlerini bu iki satırda yaptık.
sr = new StreamReader(fs);
while ((satir = sr.ReadLine()) != null)     //dosya sonuna gelinmediği sürece okumaya devam etmesi gerektiğini kodladık.
{
dizi = satir.Split(karakter);
listBox1.Items.Add(dizi[0].ToString());
listBox2.Items.Add(dizi[1].ToString();
}
sr.Close();
fs.Close();

}

3Kayıt Ekleme butonuna basıldığında:

private void button2_Click(object sender, EventArgs e)
{
listBox1.Items.Add(textBox1.Text);  // texbox’tan alınıp kayıtın eklenme işlemini yaptık.
listBox2.Items.Add(textBox9.Text);
MessageBox.Show(“KAYIT YAPILDI,görmek için yeniden KAYIT sayfasına dönünüz..”);
this.Close();

}

4-Kayıt silme işlemi:

private void button3_Click(object sender, EventArgs e)   //Silme butonu için kodları yazdık.
 {
int index = listBox1.SelectedIndex;     //listboxların birine tıklandığında diğerlerinin de seçilmesini sağlayan şey index’tir.
if (index < 0)
{
MessageBox.Show(“Önce silinecek ögeyi seçin!..”);
}
else
{
listBox1.Items.RemoveAt(index);
listBox2.Items.RemoveAt(index);
this.Close();

}

5-index kullanımı(Seçili listbox uygulaması) :

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int index = (sender as ListBox).SelectedIndex;
listBox1.SelectedIndex = index;
listBox2.SelectedIndex = index;

}

6-Verilerin dosyaya kayıt edilem işlemi Form kapanırken yapılır.Bu yüzden Formun CloseEvent’ına şu kodlar yazılabilir:

private void Form2_FormClosed(object sender, FormClosedEventArgs e)
{
FileStream fs;
StreamWriter sw;
string dosya_no, plaka, sigorta_sirketi, aciklama, sasi_no, motor_no, musteri_adi, tc_no, telefon_no, exper_adi, exper_telefon, police_no, iscilik_tutar, parca_tutar, genel_toplam;
int kayit_sayisi;

fs = new FileStream(“C:\OtoProje\musteri.txt”, FileMode.Create, FileAccess.Write);       //yazmak  için dosya açılır.
sw = new StreamWriter(fs);
kayit_sayisi = listBox1.Items.Count;  // kayıt sayısı hesaplanır.
if (kayit_sayisi > 0)
{
for (int i = 0; i < kayit_sayisi; i++)
{
sigorta_sirketi = textBox1.Text.ToString();
police_no = textBox2.Text.ToString();

sigorta_sirketi = listBox5.Items[i].ToString();
police_no = listBox6.Items[i].ToString();

sw.WriteLine( sigorta_sirketi + “*” + police_no );

}

sw.Close();
fs.Close();

}

kodlar bu şekilde ana hatlarıyla özetlenebilir.Tek bir Form üzerinde çalıştığımızı varsayarak bişeyler karaladım umarım işinize yarar kolay gelsin:))