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

نام تاپیک: نگهداری سطر جاری در گریدویو

  1. #1
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1390
    محل زندگی
    ایران
    پست
    113

    نگهداری سطر جاری در گریدویو

    با عرض سلام خدمت اساتید محترم

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

    یک سری اطلاعات تو گرید ویو دارم که با انتخاب هر سطر اطلاعاتش در یک سری تکست باکس نمایش داده میشه که تو تکست باکس ها امکان اصلاح اطلاعات را دارم فرض کنید سطر 3 از گرید را اصلاح میکنم بعد که گرید را رفرش میکنم سطر جاری تغییر میکنه و فوکوس روی سطر اول میره من میخوام رو همون سطر جاری یعنی سطر 3 بمونه میدونید باید چی کار کنم؟

  2. #2
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    اینترنت
    سن
    38
    پست
    41

    نقل قول: نگهداری سطر جاری در گریدویو

    قبل از اينكه بخواي توي تكست باكس بفرستيش ايندكس گريد رو بخون كه روي همون سطر جاري هستش بعد از عمليات بروز رساني ببرش روي همون ايندكس فكر كنم منظورمو فهميده باشي در نهايت اگر خواستي بگو برات كدش رو بزارم

  3. #3
    کاربر دائمی آواتار morteza271
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    مشهد
    پست
    1,723

    نقل قول: نگهداری سطر جاری در گریدویو

    برای این کار یه متغیر از نوع int در فذمتون ایجاد کنید و در رویداد SelectionChange گریدتون شماره سطر انتخاب شده رو در داخل این متغیر نگه داری کنید.
    حالا بعد از اینکه ویرایش رو انجام دادین و گرید رو رفرش کردین کد زیر رو بنویسید :
    GridContract.Rows[SelectedRow] = true;

    موفق باشید

  4. #4
    VIP آواتار gwbasic
    تاریخ عضویت
    خرداد 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: نگهداری سطر جاری در گریدویو

    راه اصولی اینه که DataGridView و TextBox ها به یک DataSource با استفاده از BindingSource وصل باشند که دیگه نیازی به کد نویسی اضافه و رفرش کردن DataGridView نباشه و خو BindingSource این موضوع رو هندل کنه

  5. #5
    کاربر دائمی آواتار f_pakzad
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    مازندران
    پست
    185

    نقل قول: نگهداری سطر جاری در گریدویو

    نقل قول نوشته شده توسط gwbasic مشاهده تاپیک
    راه اصولی اینه که DataGridView و TextBox ها به یک DataSource با استفاده از BindingSource وصل باشند که دیگه نیازی به کد نویسی اضافه و رفرش کردن DataGridView نباشه و خو BindingSource این موضوع رو هندل کنه
    اینکه دیتاگرید و تکست باکس وصل باشند درست. اما بعد از اینکه کاربر اطلاعات را ذخیره کرد. مگه نباید دوباره متدی که باعث پرکردن گرید میشه را فراخوانی کنیم؟ و طبعاً با فراخوانی آن متد دوباره سطراول select میشه مگر اینکه خودمون تو کد هندل کنیم

  6. #6
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    نقل قول: نگهداری سطر جاری در گریدویو

    به روش کار با BindingSource توجه کنید با استفاده از این کنترل نیازی به Refresh ندارید

  7. #7
    VIP آواتار gwbasic
    تاریخ عضویت
    خرداد 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: نگهداری سطر جاری در گریدویو

    نقل قول نوشته شده توسط f_pakzad مشاهده تاپیک
    اینکه دیتاگرید و تکست باکس وصل باشند درست. اما بعد از اینکه کاربر اطلاعات را ذخیره کرد. مگه نباید دوباره متدی که باعث پرکردن گرید میشه را فراخوانی کنیم؟ و طبعاً با فراخوانی آن متد دوباره سطراول select میشه مگر اینکه خودمون تو کد هندل کنیم
    نه نیازی به این کار نیست برای اطلاعت بیشتر به آموزش DataBinding که تو سایت گذاشتم مراجعه کنید. در ضمن لینک زیر هم اگه دنبال کنید می تونه کاملا جواب سوالتون رو بده
    https://barnamenevis.org/showthread.p...ات-شخصی

  8. #8
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1390
    محل زندگی
    ایران
    پست
    113

    نقل قول: نگهداری سطر جاری در گریدویو

    نقل قول نوشته شده توسط msdsbi مشاهده تاپیک
    قبل از اينكه بخواي توي تكست باكس بفرستيش ايندكس گريد رو بخون كه روي همون سطر جاري هستش بعد از عمليات بروز رساني ببرش روي همون ايندكس فكر كنم منظورمو فهميده باشي در نهايت اگر خواستي بگو برات كدش رو بزارم

    راستش این کار کردم datagridview1.currentrow.index اما این که چطور بتوانم سطر خاصی را به
    گرید ویو بفرستم نشد اگه امکان داره بیشتر راهنمایی کنید ممنون

  9. #9
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1390
    محل زندگی
    ایران
    پست
    113

    نقل قول: نگهداری سطر جاری در گریدویو

    نقل قول نوشته شده توسط troski مشاهده تاپیک
    برای این کار یه متغیر از نوع int در فذمتون ایجاد کنید و در رویداد SelectionChange گریدتون شماره سطر انتخاب شده رو در داخل این متغیر نگه داری کنید.
    حالا بعد از اینکه ویرایش رو انجام دادین و گرید رو رفرش کردین کد زیر رو بنویسید :
    GridContract.Rows[SelectedRow] = true;

    موفق باشید
    سلام این دستور که خطا داره

  10. #10
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1390
    محل زندگی
    ایران
    پست
    113

    نقل قول: نگهداری سطر جاری در گریدویو

    نقل قول نوشته شده توسط gwbasic مشاهده تاپیک
    نه نیازی به این کار نیست برای اطلاعت بیشتر به آموزش DataBinding که تو سایت گذاشتم مراجعه کنید. در ضمن لینک زیر هم اگه دنبال کنید می تونه کاملا جواب سوالتون رو بده
    https://barnamenevis.org/showthread.p...ات-شخصی
    باشه حتما مطالعه میکنم اما اگر روشی غیر ازdatabindingمیدونید که کمکم کنه خیلی بهتره

  11. #11
    VIP آواتار gwbasic
    تاریخ عضویت
    خرداد 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: نگهداری سطر جاری در گریدویو

    نقل قول نوشته شده توسط Leyla2011 مشاهده تاپیک
    باشه حتما مطالعه میکنم اما اگر روشی غیر ازdatabindingمیدونید که کمکم کنه خیلی بهتره
    بحث Binding برای همین منظور بوجود اومده که کار با فرم ها رو ساده تر کنه بنابراین پیشنهاد می کنم قبل از هر کاری به مطالعه این مطلب بپردازین چون بهترین و ساده ترین روش هست

  12. #12
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    کاشان
    پست
    580

    نقل قول: نگهداری سطر جاری در گریدویو

    وقتی با بایندینگ قضیه اینقد راحت میشه خوب از همون استفاده کنید ، از همه نظر بهتره ولی به هر حال بعد از اینکه شماره ردیف رو نگهداری کردید ، بعد از refresh شدن دیتاگرید از کد زیر برای رفتن به همون سطر اقدام کنید :

    dataGridView1.Rows[شماره سطر مورد نظر].Selected = true;

  13. #13
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1390
    محل زندگی
    ایران
    پست
    113

    نقل قول: نگهداری سطر جاری در گریدویو

    نقل قول نوشته شده توسط seven7777777 مشاهده تاپیک
    وقتی با بایندینگ قضیه اینقد راحت میشه خوب از همون استفاده کنید ، از همه نظر بهتره ولی به هر حال بعد از اینکه شماره ردیف رو نگهداری کردید ، بعد از refresh شدن دیتاگرید از کد زیر برای رفتن به همون سطر اقدام کنید :

    dataGridView1.Rows[شماره سطر مورد نظر].Selected = true;
    سلام با این کار سطر highlight میشه آن علامت فلش سمت راست درheader Columnگرید روی سطر اول باقی میمونه؟ درست منظورتونو فهمیدم؟

  14. #14
    کاربر دائمی آواتار f_pakzad
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    مازندران
    پست
    185

    نقل قول: نگهداری سطر جاری در گریدویو

    نقل قول نوشته شده توسط Leyla2011 مشاهده تاپیک
    سلام با این کار سطر highlight میشه آن علامت فلش سمت راست درheader Columnگرید روی سطر اول باقی میمونه؟ درست منظورتونو فهمیدم؟
    dgv.CurrentCell = dgv[شماره سطر مورد نظر, نام ستون];

    و در دیتاگرید خصوصیت selectionmod روی FullRowSelect باشد.

  15. #15
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1390
    محل زندگی
    ایران
    پست
    113

    نقل قول: نگهداری سطر جاری در گریدویو

    نقل قول نوشته شده توسط f_pakzad مشاهده تاپیک
    dgv.CurrentCell = dgv[شماره سطر مورد نظر, نام ستون];

    و در دیتاگرید خصوصیت selectionmod روی FullRowSelect باشد.
    مرسی f_pakzad دقیقا همینو میخواستم

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

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