PDA

View Full Version : هندل کردن رویداد در کنترل



ali_habibi1384
پنج شنبه 28 بهمن 1389, 10:25 صبح
یک کلاس ایجاد کردم که از تکست باکس ارث بری میکنه.حالا میخوام وقتی رویداد ورود به تکست باکس(Enter)رخ داد رنگ بک گروند تکست باکس عوض شه.
چطوری این رویداد رو هندل کنم؟

r00tkit
پنج شنبه 28 بهمن 1389, 11:01 صبح
متود OnEnter (http://barnamenevis.org/9a95a311-5ed5-70c3-0581-bbc4988f1182.htm) رو override کن




public class SingleClickTextBox: TextBox

{
protected override void OnEnter (http://barnamenevis.org/9a95a311-5ed5-70c3-0581-bbc4988f1182.htm)(EventArgs e)
{
textBox1.ForeColor = Color.Red; textBox1.BackColor = Color.Black;
}

}



روش های دیگه ای هم هست فکر کنم یه تابع درست کنی بعد با + پاس بدی به ایونت به عنوان ایونت هندلر

mehdi2004171
پنج شنبه 28 بهمن 1389, 11:15 صبح
روش های دیگه ای هم هست فکر کنم یه تابع درست کنی بعد با + پاس بدی به ایونت به عنوان ایونت هندلر

می شود این چیزی را که گفتید با کدنویسی همراه کنید؟

r00tkit
پنج شنبه 28 بهمن 1389, 12:25 عصر
SingleClickTextBox f = new SingleClickTextBox();
f.Click+=new EventHandler(myfun);

ali_habibi1384
جمعه 29 بهمن 1389, 18:11 عصر
وقتی با کد شما این رویدادو هندل میکنم اون رویداد اصلی خود کنترل از بین میره. مثلا من رویداد changeتکست رو هندل کردم توی کلاس.حالا وقتی همین رویدادو میخوام ازش استفاده کنم دیگه اصلا انگار رویداد changeاز بین رفته!چیکارش کنم؟

Rejnev
جمعه 29 بهمن 1389, 18:16 عصر
وقتی با کد شما این رویدادو هندل میکنم اون رویداد اصلی خود کنترل از بین میره. مثلا من رویداد changeتکست رو هندل کردم توی کلاس.حالا وقتی همین رویدادو میخوام ازش استفاده کنم دیگه اصلا انگار رویداد changeاز بین رفته!چیکارش کنم؟


protected override void OnTextChanged(EventArgs e)
{
base.OnTextChanged(e);
}

خط قرمزه رو پاک کردی