PDA

View Full Version : سوال: مشکل با DataGridView



kh1387
چهارشنبه 22 مهر 1388, 16:22 عصر
سلام
من یک دیتا گرید ویو دارم.
کارم اینه که میخوام وقی کاربر بر روی یکی از خونه های آن کلیک کرد، پس از عملیات مناسب آن سطر را از دید کاربر مخفی کنه.
در ضمن این کنترلم رو با دیتا تیبل پر کردم.
اول سطرهای دیتاتیبلم رو پاک کردم که خطا داد ، بعد سطرهای کنترلم رو مخفی کردم که اینم خطا داد.
کسی راه حل مناسبی برای این کار نداره؟
پیشاپیش از لطف دوستان سپاسگزارم

Reza_Yarahmadi
چهارشنبه 22 مهر 1388, 21:45 عصر
کد زیر رو امتحان کنید ببینید مشکل رو حل میکنه یا نه!

DataTable1.Rows.RemoveAt(dataGridView1.CurrentRow. Index);

behzadk
چهارشنبه 22 مهر 1388, 22:43 عصر
من بهت یه پیشنهاد میدم و اونم اینکه datagrid رو عوض کن من خودم از این مشکل ها زیاد داشتم در کل datagridview دات نت از لحاظ ui و کارایی بسیار پایین است و خیلی با هزینه است چون که همه چیز رو ما خودمون می نویسم و در مورد event ها مثلا cell change بعد از 3-7 ثانیه اجرا می شه و این برای یک ui عیب بسیار بزرگ است که می تواند به عیب های بسیاری راه باز کند
در حالت unbound component one
در حالت bound syncfusion
موفق باشی

sara.f
پنج شنبه 23 مهر 1388, 11:09 صبح
سلام
من یک دیتا گرید ویو دارم.
کارم اینه که میخوام وقی کاربر بر روی یکی از خونه های آن کلیک کرد، پس از عملیات مناسب آن سطر را از دید کاربر مخفی کنه.
در ضمن این کنترلم رو با دیتا تیبل پر کردم.
اول سطرهای دیتاتیبلم رو پاک کردم که خطا داد ، بعد سطرهای کنترلم رو مخفی کردم که اینم خطا داد.
کسی راه حل مناسبی برای این کار نداره؟
پیشاپیش از لطف دوستان سپاسگزارم
سلام
یعنی در اصل می خواید مثل حالت delete کردن اطلاعات، سطر مورد نظرتون از datagridview حذف بشه؟

اَرژنگ
پنج شنبه 23 مهر 1388, 12:00 عصر
سلام
من یک دیتا گرید ویو دارم.
کارم اینه که میخوام وقی کاربر بر روی یکی از خونه های آن کلیک کرد، پس از عملیات مناسب آن سطر را از دید کاربر مخفی کنه.
چیزی که واقعا میخواهید از دید کاربر مخفی کردن نیست، بلکه اینکه عملیات انجام شده و دیگر این رکورد که تشبیه ذهنی یک بیزنیس ابجکت است در اون ویو دیگر باهاش کاری نیست.
در ضمن این کنترلم رو با دیتا تیبل پر کردم.
روش درست ، نرمال استاندارد، منتها این داتا‌تیبله چی هست؟ چه چیزهایی را خودش نگهداری میکنه؟ لیست کاربران؟ لیست راننده‌ها؟ داتا تیبل به خودی خود مفهوم نیست . اینکه در برنامه‌نویسی شئیگرا سیستم از چی تشکیل شده مهمه.
اول سطرهای دیتاتیبلم رو پاک کردم که خطا داد ، با چه کدی؟ چه خطایی؟ مقدار اطلاعاتی این خط هیچ کمکی به ما نیست که کمکتان کنیم.
بعد سطرهای کنترلم رو مخفی کردم که اینم خطا داد.
با چه کدی؟ چه خطایی؟ مقدار اطلاعاتی این خط هیچ کمکی به ما نیست که کمکتان کنیم.
کسی راه حل مناسبی برای این کار نداره؟
اگر منظور از اینکار شبیه سازی قایم شدن سترهاست؟ که اصلاً اشتباه است، ولی اگر منظور از این کار : بعد از اینکه یک کلکشن از داده‌هایی که قابلیت اینکه عملی برشان انجام شدن را دارد تغییر کرد و بعضی از موجودیتها دیگر شامل انجام عملیات برشان نبود میخواهم که داتا‌گرید ویوم فقط اون موجودیتهایی که عملیات برشان شامل میشه نشان بده. که راه حل مناسب اینکار ، گرفتن یک لیست جدید موجودیتهاست که قابلیت اینکه عملیات برشان وارد بشه را دارند، یعنی به زبان دیگر: داتا سورس را رفرش کنید، و اگر منطقی کار کرده باشید یک لیست جدید که شامل اون چیزی که منطق عملیات برش صدق نمیکنه بدست میارید، و نشانش بدید. راه مناسب، این است که با اجزایی که سیستم برش مدیریت میکنه یک مدل منطقی بتراشید و ازش درخواست کنید که لیست چیزهایی را که میخواهید به شما بده. روشهایه تند ماسمالی: داتاگرید رو را ویزیبلش را هاید کن. یا اینکه از داتاتبل حدفش کن و خطایی را که میگیری به ما بگو.