PDA

View Full Version : مبتدی: خالی نشدن مقدار Textbox در C#



vb1249
یک شنبه 23 اسفند 1394, 05:07 صبح
سلام

من یک تکست باکس دارم وقتی طرف روش کلیک میکنه یا همون (FoCus) انجام میشه میخوام مقدارش خالی بشه .

از کد زیر استفاده کردم جواب نمیدن .
private void textbox2__Click(object sender, EventArgs e) {
this.Text = "";
}

همچنین Getfocus هم جواب نداد:گیج:

Pr0grammer
یک شنبه 23 اسفند 1394, 05:34 صبح
this به کلاس جاری مربوط میشه (یعنی فرم) نه به شئ TextBox
بنابراین بایدمینوشتید : textbox1.Text
ضمناً بهتره توی رویداد Enter مربوط به textBox کد رو مینوشتید ؛ نه توی Click


موفق باشید/

alexmcse
یک شنبه 23 اسفند 1394, 05:56 صبح
سلام

من یک تکست باکس دارم وقتی طرف روش کلیک میکنه یا همون (FoCus) انجام میشه میخوام مقدارش خالی بشه .

از کد زیر استفاده کردم جواب نمیدن .
private void textbox2__Click(object sender, EventArgs e) {
this.Text = "";
}

همچنین Getfocus هم جواب نداد:گیج:

سلام همین طور که دوست عزیزمان pr0grammer فرمودند
private void textBox1_Enter(object sender, EventArgs e) {
textBox1.Text = string.Empty;
}

vb1249
سه شنبه 25 اسفند 1394, 04:46 صبح
عجیبه این کد هم وقتی روی تکست باکس کلیک میشه مقدار رو خالی نمیکنه :افسرده:

rezashaban
سه شنبه 25 اسفند 1394, 06:10 صبح
سلام دوست من
شما میتونی از رویداد های focus یا همون click هم استفاده کنی البته باید این رویداد های برای اون تکست باکس تنظیم بشن تا با کلیک روی اون متنش خالی بشه

kamiloted
سه شنبه 25 اسفند 1394, 06:18 صبح
سلام دوست عزیز . توی رویداد کلیک تکست باکس بنویس

private void textBox1_Click(object sender, EventArgs e)
{
textBox1.Clear();
}

vb1249
سه شنبه 25 اسفند 1394, 10:56 صبح
سلام دوست عزیز . توی رویداد کلیک تکست باکس بنویس

private void textBox1_Click(object sender, EventArgs e)
{
textBox1.Clear();
}



سلام

کد پاک کردن درسته مشکل از رویداد هست .

مثلا من اینو می نویسم
private void textBox2_TextChanged(object sender, EventArgs e)
{
textBox1.Clear();
}

وقتی میخوام چیزی تایپ کنم سریع پاکش میکنه . ولی قصد من اینه فقط وقتی روی تکست باکس کلیک شد مقدارش پاک بشه . تشکر

kamiloted
چهارشنبه 26 اسفند 1394, 07:09 صبح
دوست عزیز طوری که من متوجه شدم.
شما 2 تا تکست باکس داری. و توی تکست باکس 1 متنی رو نوشتی مثلا علی.
و میخوای به محض کلیک بر روی تکست باکس 2 عبارت تکست باکس 1 سریع پاک بشه.



private void textBox2_Click(object sender, EventArgs e)
{
textBox1.Clear();
}

bisbis10
چهارشنبه 26 اسفند 1394, 10:30 صبح
سلام

کد پاک کردن درسته مشکل از رویداد هست .

مثلا من اینو می نویسم
private void textBox2_TextChanged(object sender, EventArgs e)
{
textBox1.Clear();
}

وقتی میخوام چیزی تایپ کنم سریع پاکش میکنه . ولی قصد من اینه فقط وقتی روی تکست باکس کلیک شد مقدارش پاک بشه . تشکر


دوست عزیز شما توی رویداد TextChanged تکست باکس اومدی نوشتی
به محض این که مقدار داخل تکست باکس تغییر کنه کدتون اجرا میشه و تکست باکس خالی مشه
همه جواب صحیح رو بهتون دادن


private void textBox1_Click(object sender, EventArgs e)
{
textBox1.ResetText();
}

vb1249
چهارشنبه 26 اسفند 1394, 12:22 عصر
دوست عزیز شما توی رویداد TextChanged تکست باکس اومدی نوشتی
به محض این که مقدار داخل تکست باکس تغییر کنه کدتون اجرا میشه و تکست باکس خالی مشه
همه جواب صحیح رو بهتون دادن


private void textBox1_Click(object sender, EventArgs e)
{
textBox1.ResetText();
}

دوست عزیز من اون رویداد TextChanged رو مثال زدم وگرنه اینقدر متوجه ام :گیج:

مسله الان اینه رویداد کلیک کار نمیکنه .

لینک دانلود پروژه پیوست شد خودتون ببینید مشکل رو !139627

Mahmoud.Afrad
چهارشنبه 26 اسفند 1394, 12:31 عصر
هر وقت دیدید رویدادی عمل نمیکنه اول مطمئن بشید که متد رو به کنترل شناساندید یا نه. برای اینکار کنترل(های) مورد نظر رو انتخاب کنید و از طریق پنجره Events رویداد مورد نظر رو روی متد تنظیم کنید.

vb1249
چهارشنبه 26 اسفند 1394, 13:19 عصر
تشکر با راهنمایی های شما دوستان مشکل حل شد .