PDA

View Full Version : کار نکردن دکمه delete



ali_mnkt
پنج شنبه 07 خرداد 1388, 00:48 صبح
با سلام

چطور می شه کاری کرد که دکمه delete در text box کار نکنه ؟ یعنی وقتی متن یه text box

رو انتخاب کردیم و دکمه delete رو زدیم اون متن حذف نشه ؟

seven7777777
پنج شنبه 07 خرداد 1388, 02:04 صبح
کافیه کد زیر رو در رویداد مربوط به KeyPress تکست باکست قرار بدی ( البته اگه می خوای کلا تکست باکست تغییر نکنه یا Label استفاده کن و یا تکست باکست رو ReadOnly کن ) :


Keys pressKey = (Keys)e.KeyChar;
if (pressKey == Keys.Delete)
e.Handled = true;
else
e.Handled = false;

اینجوری اگه Delete زده بشه ، عمل پاک شدن در تکست باکست انجام نمیشه .
اما تا حالا به این فکر کردی که اگه کل متن تکست باکستو انتخاب کنه و بعد یه Space بزنه چی میشه ؟؟؟

ali_mnkt
پنج شنبه 07 خرداد 1388, 16:31 عصر
سلام دوست عزیز

من کد شما رو امتحان کردم ولی مشگلم حل نشد یعنی وقتی یه متن رو در textbox می نویسم

و سپس تمام اون رو انتخاب میکنم و delete رو می زنم بازم حذف می شه

NewFoxStudent
پنج شنبه 07 خرداد 1388, 16:54 عصر
این کد رو توی KeyDown بنویس


if (e.KeyCode == Keys.Delete)
e.Handled = true;
else
e.Handled = false;

وحید پیرمرادیان
پنج شنبه 07 خرداد 1388, 17:27 عصر
دوست عزیز سلام.

برای غیر فعال کردن دکمه delete کد زیر را در رویداد KeyDown وارد کن.




if (e.KeyValue == 46)
e.Handled = true;



همچنین برای اینکه با دکمه space و backspace هم متن شما پاک نشود می توانی کد زیر را در رویداد KeyPress کپی کنی.




if (char.IsControl(e.KeyChar) | char.IsWhiteSpace(e.KeyChar))
e.Handled = true;



موفق باشید.

hojjat_gh
پنج شنبه 07 خرداد 1388, 23:16 عصر
با سلام
میتونی اینیبل تکس باکس رو هم فالس کنی :

textbox1.enable=false;