PDA

View Full Version : انتخاب یک ردیف برای دیتا گرید ویو



omid-vbAuto
یک شنبه 14 آذر 1389, 17:44 عصر
با سلام
دوستان چطوری می تونیم به وسیله کد نویسی چند سطر از دیتا گرید ویومون رو به حالت Select در بیاریم؟

hossein-khoshseyar
یک شنبه 14 آذر 1389, 19:17 عصر
با سلام
دوستان چطوری می تونیم به وسیله کد نویسی چند سطر از دیتا گرید ویومون رو به حالت Select در بیاریم؟


دوست عزیز با این کد هر سطری رو که بخوای می تونی سلکت کنی
حتی می تونی چند تا از اینها بنویسی و هر چندتا سطر رو که خواستی با هم سلکت کنی




Me.DataGridView1.Rows(n).Selected() = True

ali_najari
یک شنبه 14 آذر 1389, 21:03 عصر
واسه اینکه بطور اتوماتیک بخواید Scroll کنه از روش زیر میتونید استفاده کنید:


DataGridView1.rows(n).cells(0).selected = true

omid-vbAuto
یک شنبه 14 آذر 1389, 22:20 عصر
دوستان عزیز از لطفتون ممنونم.

از کدهای زیر استفاده کردم :




DataGridView1.Rows(3).Selected() = True
DataGridView1.Rows(2).Cells(2).Selected = True



و نتیجه به شکل زیر شد.که دارای یه اشکاله !

و اونهم اینه که اون سلولی که دورش رو با مستطیل قرمز مشخص کردم خودش بدون اینکه کد نویسیش کونم سلکت می شه علتش چیه؟


63148



همان گونه که در شکل بالا دیده میشه من تو ستون اولم چند تا چکباکس دارم .و می خوام کدی بنویسم که با تیک خوردن هر ردیف ،اون ردیف مربوطه سلکت بشه و با تیک زدن چکباکس دیگه اون سلکت قبلی رو از دست ندیم.

دوستان می تونن کمکم کنن؟

ali_najari
یک شنبه 14 آذر 1389, 22:52 عصر
دوست عزیز خاصیت MultiSelect رو معادل با False قرار بدهید و خاصیت SelectionMode رو روی FullRowSelect بزارید

omid-vbAuto
یک شنبه 14 آذر 1389, 23:14 عصر
دوست عزیز خاصیت MultiSelect رو معادل با False قرار بدهید و خاصیت SelectionMode رو روی FullRowSelect بزارید

مهندس جوابی که دادین ربطی به سوال من نداشت که!!! سوالمو نگاه کنید

omid-vbAuto
دوشنبه 15 آذر 1389, 12:15 عصر
دوستان یعنی کسی جواب سوال ساده منو بلد نیست؟!!!

ali_najari
دوشنبه 15 آذر 1389, 12:35 عصر
من متوجه نشدم شما دقيقا ميخوايد چيكار كنيد!

مشيه يكم توضيحات بيشتري بديد!

ممنون ميشم

omid-vbAuto
دوشنبه 15 آذر 1389, 13:01 عصر
من متوجه نشدم شما دقيقا ميخوايد چيكار كنيد!

مشيه يكم توضيحات بيشتري بديد!

ممنون ميشم

مهندس جان ،همان طور که در شکل پست چهار دیده میشه:

من میام با یه دستوراتی یه سطر و یا یه سلول رو select می کنم تا این جای کار مشکلی نداریم .مشکل اینجاست که سلول اولی که دورش رو با مستطیل قرمز نشون دادم خودش اتوماتیک select میشه که من نمی خوام این سلول select بشه.

مشکل دوم من اینه که می خوام یه کد کلی بنویسم تا با زدن تیک در ستون اولم اون ردیف به حالت انتخاب در بیاد.و بتونم این کارو مثلا برای سطر 1 و 2 و 4 انجام بدم.یعنی با تیک زدن چکباکس ردیف اول اون ردیف انتخاب بشه سپس برم ردیف دوم و با زدن تیک مربوط به ردیف دوم اون ردیف هم انتخاب بشه و به انتخاب های قبلی من اضافه بشه.

hossein-khoshseyar
دوشنبه 15 آذر 1389, 13:40 عصر
سلام
ببین این به دردت می خوره
همون کاری که شمامی خوای رو می کنه اما نه با سلکت
چون با سکلت اگه یه جای دیگه توی دیتا گرید کلیک کنی سلکت قبلی از بین میره

omid-vbAuto
دوشنبه 15 آذر 1389, 14:11 عصر
سلام
ببین این به دردت می خوره
همون کاری که شمامی خوای رو می کنه اما نه با سلکت
چون با سکلت اگه یه جای دیگه توی دیتا گرید کلیک کنی سلکت قبلی از بین میره


مهندس کارتون عالی بود.

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

ولی من شخصا از خلاقیت شما تشکر می کنم .چون رنگش رو به حالتی گذاشتین که به رنگ select دیده بشه.

hossein-khoshseyar
دوشنبه 15 آذر 1389, 14:19 عصر
مهندس کارتون عالی بود.

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

ولی من شخصا از خلاقیت شما تشکر می کنم .چون رنگش رو به حالتی گذاشتین که به رنگ select دیده بشه.

خواهش می کنم
فقط حواستون به یه نکته باشه !
اونم اینکه ممکنه تو هر سیستمی رنگ سلکت با رنگ پس زمینه اون سطر از دیتا گرید ویو یکی نشه
مثلا یکی روی سیستمش تم گذاشته باشه و.......
اگه می خواید ازش استفاده کنید بهتره اونجایی که من یک رنگ ثابت رو برای رنگ پس مینه گذاشتم
توی اون قسمت شما از رنگ سیستمی highlight استفاده کن تا مطمئن باشی توی ههم سیستم ها رنگ هایلایت با رنگ پس زمینه یکی میشه

omid-vbAuto
دوشنبه 15 آذر 1389, 14:49 عصر
خواهش می کنم
فقط حواستون به یه نکته باشه !
اونم اینکه ممکنه تو هر سیستمی رنگ سلکت با رنگ پس زمینه اون سطر از دیتا گرید ویو یکی نشه
مثلا یکی روی سیستمش تم گذاشته باشه و.......
اگه می خواید ازش استفاده کنید بهتره اونجایی که من یک رنگ ثابت رو برای رنگ پس مینه گذاشتم
توی اون قسمت شما از رنگ سیستمی highlight استفاده کن تا مطمئن باشی توی ههم سیستم ها رنگ هایلایت با رنگ پس زمینه یکی میشه

مهندس ما چطوری می تونیم این رنگ سیستمی را به برناممون آدرس بدیم؟کد؟

ali_najari
دوشنبه 15 آذر 1389, 15:03 عصر
سلام
ببین این به دردت می خوره
همون کاری که شمامی خوای رو می کنه اما نه با سلکت
چون با سکلت اگه یه جای دیگه توی دیتا گرید کلیک کنی سلکت قبلی از بین میره

دوست عزيز من از شما ممنون هستم بخاطر جوابتون ولي خوب بايد اين نكته رو اشاره كنم كه اگر خاصيت Multiselect فعال باشه با كليد روي سطرها سطرهاي انتخاب شده ديگه De select نميشه
البته يكم كد نويسي داره!

hossein-khoshseyar
دوشنبه 15 آذر 1389, 15:12 عصر
مهندس ما چطوری می تونیم این رنگ سیستمی را به برناممون آدرس بدیم؟کد؟


فقط کافیه که به جای اون رنگی که نوشته بودم آر جی بی ....
بنویسی



System.Drawing.Color.FromKnownColor(System.Drawing .KnownColor.Highlight)


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

hossein-khoshseyar
دوشنبه 15 آذر 1389, 15:13 عصر
دوست عزيز من از شما ممنون هستم بخاطر جوابتون ولي خوب بايد اين نكته رو اشاره كنم كه اگر خاصيت Multiselect فعال باشه با كليد روي سطرها سطرهاي انتخاب شده ديگه De select نميشه
البته يكم كد نويسي داره!

بله پاسختون درسته
اما اگه وقتی به جاهایی سلکت باشه و کاربر بدون اینکه کلیدی رو نگه دارهروی یک سلول دیگهکلیک کنه چی؟
اون وقت همه سلکت ها پاک میشه

ali_najari
دوشنبه 15 آذر 1389, 15:55 عصر
من خدمتتون عرض كردم كه كمي كد نويسي داره واسه خاطر همين مشكل بود كه گفتم كد نياز داره!