نمایش نتایج 1 تا 9 از 9

نام تاپیک: حرکت به جلو (سلول بعدی) با زدن کلید Enter در DataGridView

  1. #1
    کاربر دائمی آواتار Happy_davood
    تاریخ عضویت
    دی 1383
    محل زندگی
    تبریز
    سن
    44
    پست
    306

    حرکت به جلو (سلول بعدی) با زدن کلید Enter در DataGridView

    سلام
    به طور عادی بازدن کلید Enter روی یکی از خانه های گرید ، خانه فعلی یک ردیف به پائین میره . در حالیکه من می خوام بره جلو تا کاربر بتونه فقط از قسمت عددی صفحه کلید و کلید Enter مقادیر رو با سرعت وارد کنه .
    من سعی کردم در وقفه KeyDown با تشخیص کلید Enter این کار رو خودم انجام بدم یعنی یک خانه به جلو حرکت کنم . ولی متاسفانه وقتی DataGridView در حالت ویرایش هست ، کلید Enter نه به فرم وارد میشه و نه به گرید .

  2. #2
    کاربر دائمی آواتار ali_kolahdoozan
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    اون سر دنیا
    پست
    1,631
    داری یه چیزی توی مایه های فاکتور میسازی . من ورود مقدار درون خود گرید رو پیشنهاد نمی کنم

  3. #3
    CellEndEdit میتونه کارت رو راه بندازه

  4. #4
    کاربر دائمی آواتار Happy_davood
    تاریخ عضویت
    دی 1383
    محل زندگی
    تبریز
    سن
    44
    پست
    306
    من هم دوست ندارم ولی بعضی از کاربران به این کار عادت دارند .
    از طرفی در بعضی کار ها این تبدیل به یک استاندارد شده . مثلاً حسابدار ها که در زدن سند حسابداری همیشه یک دستشون درگیر نگه داشتن سند هست و تا امروز هم تمام برنامه ها مخصوصاً تحت داس این امکان رو داده بهشون .

    این موضوع برام خیلی مهم و از طرفی فوریه !

  5. #5
    کاربر دائمی آواتار Happy_davood
    تاریخ عضویت
    دی 1383
    محل زندگی
    تبریز
    سن
    44
    پست
    306
    CellEndEdit رو هم تست کردم ولی جواب نگرفتم . حتی IsInputKey رو هم Override کردم تا شاید بشه در KeyDown کلید Enter رو تشخیص داد .

    اگر شما از CellEndEdit جواب گرفتید لطفاً بیشتر توضیح بدید .

  6. #6
    کاربر دائمی آواتار ali_kolahdoozan
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    اون سر دنیا
    پست
    1,631
    پس لا اقل از گریدهای معمول دات نت نرو . خیلی بد قلقه . فکر کنم جانوس بهتر باشه

  7. #7
    کاربر دائمی آواتار Happy_davood
    تاریخ عضویت
    دی 1383
    محل زندگی
    تبریز
    سن
    44
    پست
    306
    خوب مقداری از کار با این گرید جلو رفته و دیگه نمیشه برگشت .
    از طرفی دوست ندارم از کامپوننت های دیگه استفاده بشه . ترجیح می دم همه چیز عادی و استاندار دات نت باشه . تازه این مشکل باید بالاخره چاره ای داشته باشه دیگه !؟

  8. #8
    کاربر دائمی آواتار ali_kolahdoozan
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    اون سر دنیا
    پست
    1,631
    من یک چیزی شبیه فاکتور با ایجاد شی با کد ساختم گرید حوصلم رو سر برد

  9. #9
    کاربر دائمی آواتار Happy_davood
    تاریخ عضویت
    دی 1383
    محل زندگی
    تبریز
    سن
    44
    پست
    306
    خوب من بهترین روش رو پیدا کردم . با کمترین هزینه .
    بهترین روش این هست که گرید کلید Enter رو Tab یا کلید RightArrow و یا LeftArrow درک کنه .
    برای این کار هم یه کلاس از گرید مشتق کنید و فقط دو تا از توابع اون رو Override کنید :

    public class MyDataGridView : DataGridView
    {
    protected override bool ProcessDialogKey(Keys keyData)
    {
    Keys key = (keyData & Keys.KeyCode);
    if (key == Keys.Enter)
    {
    return this.ProcessRightKey(keyData);
    }
    return base.ProcessDialogKey(keyData);
    }
    protected override bool ProcessDataGridViewKey(KeyEventArgs e)
    {
    if (e.KeyCode == Keys.Enter)
    {
    return this.ProcessRightKey(e.KeyData);
    }
    return base.ProcessDataGridViewKey(e);
    }
    }


    حالا فقط کافیه گرید رو از نوع MyDataGridView به کار ببرید .

تاپیک های مشابه

  1. استفاده از کلید enter بجای tab
    نوشته شده توسط visual_sadegh در بخش VB.NET
    پاسخ: 3
    آخرین پست: دوشنبه 24 دی 1386, 16:37 عصر
  2. چطوری جلوی اینو که وقتی کاربر enter رو زد صفحه
    نوشته شده توسط odiseh در بخش ASP.NET Web Forms
    پاسخ: 7
    آخرین پست: دوشنبه 28 آبان 1386, 11:50 صبح
  3. enter در سلول های datagridview
    نوشته شده توسط nazila_f در بخش VB.NET
    پاسخ: 10
    آخرین پست: چهارشنبه 02 خرداد 1386, 10:07 صبح
  4. enter به جای tab در php
    نوشته شده توسط ArtCom در بخش طراحی وب (Web Design)
    پاسخ: 3
    آخرین پست: یک شنبه 19 شهریور 1385, 11:08 صبح
  5. پاسخ: 8
    آخرین پست: جمعه 22 اردیبهشت 1385, 14:08 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •