PDA

View Full Version : سوال: تایپ همزمان در دو Textbox



localdisk
شنبه 09 آذر 1387, 09:00 صبح
با عرض سلام و خسته نباشید
چه جوری میتونیم وقتیکه تو یک فرم ویندوز در یک Textbox داریم اطلاعاتی رو وارد می کنیم همزمان تو یک Textbox دیگه هر کاراکتری رو که وارد Textbox اول می کنیم بطور اتوماتیک تو Textbox دوم هم وارد بشه.

.................................................. .................................................. ....
شروع نکردن بهتر از تمام نکردن است.

s_ahmadneya
شنبه 09 آذر 1387, 09:08 صبح
با عرض سلام و خسته نباشید
چه جوری میتونیم وقتیکه تو یک فرم ویندوز در یک Textbox داریم اطلاعاتی رو وارد می کنیم همزمان تو یک Textbox دیگه هر کاراکتری رو که وارد Textbox اول می کنیم بطور اتوماتیک تو Textbox دوم هم وارد بشه.

.................................................. .................................................. ....
شروع نکردن بهتر از تمام نکردن است.


کافی است در یکی از متدها ی text1_keypress ویا text1_keyup بنویسی


text2.text=text1.text

رافعی مهدی
شنبه 09 آذر 1387, 09:24 صبح
سلام
به نظر من بهتره راه حل s_ahmadneya را براي رويداد TextChanged بكار ببريد، چون با فشرده يا رها شدن هر دكمه‌اي حتماً متن داخل تكست باكس تغيير نمي‌كند.



private void myTextBox1_TextChanged(object sender, EventArgs e)
{
myTextBox2.Text = myTextBox1.Text;
}

localdisk
شنبه 09 آذر 1387, 11:22 صبح
من میخوام که اطلاعات از Textbox1 کاراکتر به کاراکتر وارد Textbox2 بشه در واقع انگار همزمان داریم توی دوتا Textbox تایپ می کنیم.

با تشکر
.................................................. ................................
در خواندن کتابهایی در باره سلامتی دقت کنید چون ممکن است با یک اشتباه چاپی بمیرید!
مارک تواین

رافعی مهدی
شنبه 09 آذر 1387, 11:38 صبح
اگر كدي كه براتون نوشتم رو امتحان كرده بوديد متوجه ميشديد كه دقيقاً همون كاري رو كه نوشتيد انجام ميده!!!
[اطفاً براي تشكر كردن از دوستان از دكمه ي تشكر استفاده كنيد]


.

s_ahmadneya
شنبه 09 آذر 1387, 11:58 صبح
اگر كدي كه براتون نوشتم رو امتحان كرده بوديد متوجه ميشديد كه دقيقاً همون كاري رو كه نوشتيد انجام ميده!!!
[اطفاً براي تشكر كردن از دوستان از دكمه ي تشكر استفاده كنيد]


.

کدها دقیقا" نیاز شما رامرتفع می کند اما در واقع کل متن text1 در text2 می ریزه اگه می خواهی واقعا" مفهوم نوشتن باشه می تونی در داخل تابعtext1_keyup تابعtext2_keyupر افراخانی کنی اما راه حل اول بهتره.
اما نکته مهم خط سوم نقل قول بالا را بخوان

majid325
شنبه 09 آذر 1387, 17:56 عصر
ميتوني بايندش كني به text اون txt اي كه مد نظرتون هست.

textBox2.DataBindings.Add("Text", textBox1, "Text");

shask00l
شنبه 09 آذر 1387, 22:09 عصر
من میخوام که اطلاعات از Textbox1 کاراکتر به کاراکتر وارد Textbox2 بشه در واقع انگار همزمان داریم توی دوتا Textbox تایپ می کنیم.


البته روشهایی که دوستان ارائه دادن دقیقا همین کار رو انجام میده . یعنی نتیجه هر دو روش با هم مساویه . ولی اگر اصرار دارید که حتما کاراکتر به کاراکتر متن رو وارد textbox2 بکنید میتونید توی رویداد textchanged کدی بنویسید که طول رشته اوب و دوم رو با هم مقایسه بکنه و اگه رشته اول بلند تر بود تعداد کاراکتر های اضافه رو جدا کنه و به رشته دوم اضافه کنه . ضمنا مشکل backsapce باقی میمونه که باید حلش کنید .

saeed-kh
یک شنبه 10 آذر 1387, 10:46 صبح
منم نظر دوست عزیزمون آقای رافعی رو پیشنهاد میکنم
رویدادها رو یادت نره.
همون رویداد TextChangedبهتره.
چون شما وقتی که یک متن رو داخل Textboxکپی کنی فقط رویداد TextChangedفراخوانی میشه ، نه رویداد KeyUp یا keydown

localdisk
دوشنبه 18 آذر 1387, 13:24 عصر
همون راه حل آقای رافعی رو امتحان کردم درست بود دستت درد نکنه آقای رافعی
از بقیه دوستان هم ممنونم که جواب دادند