Şöyle Bir Olay (C#)
-
Şimdi arkadaşlar ben form1 'de yaptığım bazı işlerimleri form2 de yazdırmak istiyorum.Bunun için readonly bir textbox ekledim form2'ye ben burda yazdıklarımı nasıl alt alta sıralatabilirim?Birde form2 'nin açık olup olmadığını kontrol ettirebileceğim bir fonksiyon varmıdır?
-
ilk dedini anlamadm neden bimom kafam karşk galiba .) ama 2.sini şu şekilde yapablrsn mesla
foreach (Form f in Application.OpenForms)
if (f.text == "Form2")
MessageBox.Show("form2 açık kii");
form.Show(); -
İlk dediğim olay şöyle.form'a bir tane textbox ekledim.Ben sürekli bu textbox'a yeni yazı eklicem.Mesela:
Merhaba
Nasılsın
Diye ancak bunu nasıl böyle alt alta yazdırıcam onu soruyorum.
-
tam olarak yapmak istedigin programi soylersen daha acik olur.girilen yazilari cikartmak icin dinamik olarak labeller olusturabilir veya richtextbox kullanabilirsin.
-
listbox'da bastır hacı alta alta ?
yazılanları önce bir değişkende tut ardından
listbox1.items.add(değişkenadi);
bunu istersen bir timer ile 10 milisaniyede bir listbox'a eklet ister 10 dk da bir :)
veya timer yerine textbox ın bir eventini kulalnabilirsin -
alt alta listbox la ekleyebilirsin hoca..
form1 den form2 e geçiş içinde bir windows form daha oluştur ..
örn 1. sinin adı form1 2.adı form2 ise
form1 in load olayına yada veriyi girdiğin textbox'ın eventine göre
Form f=new From2();
f.show();
buradaki f değişkeni ile form1 den form2'e geçiş yapabilirisn..
-
Yukarda söylenenlerin herhangibiri işe yaramaz.
Form2 yi tanımlarken, public form2() gibi bir metod varya.
İşte o metodu şöyle değiştircen,
string bilgi1, bilgi2 ... ;
form2(string gircegimBilgi, string gircegimBilgi2 .... ... ... )
Sonra da onları başka local stringlere atıycan şöyleki
bilgi1 = gircegimBilgi;
bilgi2 = gircegimBilgi2;
.
.
.
Sonra da onları kullancaksın.
Çözüm budur.
Ha bir de form.showdialog() yaparken, de aynı bilgileri göndermen lazım ki form2 o bilgilerle dolu başlasın.
-
Musket zaten dediğin gibi yapıyorum.Benim problemim şurda başlıyor.
textBox1'i public yaptım böylece diğer class'lardan erişebiliyorum burda problem yok.Benim yapamadığım şu.Eklediğim textbox'u multiline yaptım. textBox1.Text = "adasda"; yaptığımızda textBox 'da adasda yazıyor ya, ben yeni yazdırdığım şeyim. textboxda alt satıra yazmasını sağlamak.textBox'da satır satır yazdırmak yani.
-
Ne yapmaya çalıştığını anlamadım ama "\n" ile yeni satıra geçebilirsin.
-
TeRRoR bunu yazdı:
-----------------------------Musket zaten dediğin gibi yapıyorum.Benim problemim şurda başlıyor.
textBox1'i public yaptım böylece diğer class'lardan erişebiliyorum burda problem yok.Benim yapamadığım şu.Eklediğim textbox'u multiline yaptım. textBox1.Text = "adasda"; yaptığımızda textBox 'da adasda yazıyor ya, ben yeni yazdırdığım şeyim. textboxda alt satıra yazmasını sağlamak.textBox'da satır satır yazdırmak yani.
-----------------------------Haha, tabiiki Return gönderceksin.
Yani başka yolları da var, ama return göndermek favorimdir...
Return
SendKeys.Send("{ENTER}");
//Bundan önce textBox2.focus(); kullanman gerekir tabiiki.
//Sonra da başka bir işlem yapcaksan focus u değiştirmen gerekir...
