PDA

View Full Version : مشکل عجیب در رویداد keydownفرم



rezaeezadeh
دوشنبه 18 بهمن 1389, 11:47 صبح
سلام خدمت همه اساتید.
من دو تا فرم دارم که از طریق فرم اول فرم دوم رو فراخوانی میکنم.
میخوام تو همه فرمام enterمثل tabروی کنترلام عمل کنه.
key previewفرمام هم true هست.واین کد رو نوشتم که تو غرم اول جواب میده ولی تور فرم دوم جواب نمیده جالب اینکه تو فرم دوم بجای enterهرکلید دیگه ای کار میکنه!! حتی توی key_down تک تک کنترلام هم نوشتم.تو رویداد key_press l هم جواب نداد.هرکاری هم بگید انجام دادم حتی صفحه کلیدمو عوض کردم:خجالت:.خواهش میکنم اگه میتونید کمکم کنید.

private void Form3_KeyDown(object sender, KeyEventArgs e
}
if(e.KeyCode == Keys.Enter)
this.ProcessTabKey(true);
{
{

Arash_janusV3
دوشنبه 18 بهمن 1389, 12:32 عصر
داخل if
بنویس

sendkeys.send("{Tab}")

rezaeezadeh
دوشنبه 18 بهمن 1389, 12:59 عصر
خیلی ممنون.دوست عزیز از توجهت.ولی مشکل من توی c#هست.

داخل if
بنویس

sendkeys.send("{Tab}")

rezaeezadeh
دوشنبه 18 بهمن 1389, 13:00 عصر
لطفا اگه کسی میدونه تو c#راهنمایی کنه.

Arash_janusV3
دوشنبه 18 بهمن 1389, 13:35 عصر
منم به سی شارپ بهت گفتم:متفکر:

sendkeys.send("{Tab}");

saeed3164
دوشنبه 18 بهمن 1389, 13:37 عصر
منم چنین مشکلی تو 2010 دارم key-press اصلا جواب نمیده.اگه شماخم 2010 استفاده میکنید حتما از نسخشه.بجای key.enetr عدد 13 بزن جواب نمی ده

az.heidarzadeh
دوشنبه 18 بهمن 1389, 13:43 عصر
سلام
دوستمون درست گفتند من همیشه از این کد استفاده میکنم و همیشه هم جواب میده ...


private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (Convert.ToString(e.KeyCode) == ("Return"))
SendKeys.Send("{TAB}");
}

Arash_janusV3
دوشنبه 18 بهمن 1389, 13:55 عصر
منم چنین مشکلی تو 2010 دارم key-press اصلا جواب نمیده.اگه شماخم 2010 استفاده میکنید حتما از نسخشه.بجای key.enetr عدد 13 بزن جواب نمی ده
من با 2008 کار می کنم
و از این موردی که گفتید مطلع نبودم
و پیشنهاد می کنم از 2008 استفاده کنید چون 2005 و 2008 تفاوت آن چنانی نداره و بخاطر همین از کامپوننت هایی مثل janus stimulsoft crystal active و کامپوننت هایی که در اون زمان ساخته شده اند را به راحتی می شه استفاده کرد اما در نسخه های جدبد باید با کامپوننت های جدیدتری کار کنیم که اونها هم یا crack نشدند یا ...

mbasirati
دوشنبه 18 بهمن 1389, 17:52 عصر
سلام
منم از این کد استفاده میکنم با این تفاوت که کار کلید تب رو نمیکنه ، یعنی خودت باید بگی وقتی اینتر زد بره به کدوم کنترل
مثلا:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if((int)e.KeyChar==13)
textBox2.Focus();
}

rezaeezadeh
سه شنبه 19 بهمن 1389, 07:45 صبح
ممنون از توجه همه دوستان.ولی بازهم نشد.اگه منم جوابی براش پیدا کردم حتما میذارم .

Arash_janusV3
سه شنبه 19 بهمن 1389, 08:43 صبح
شما tabindex رو می دونی چیه؟

rezaeezadeh
سه شنبه 19 بهمن 1389, 13:45 عصر
بله.من tabindexoتنظیم کردم.
اولین کنترل 0 وهمینطور تا آخر.