PDA

View Full Version : سوال: قرار دادن checkBox در دیتا گرید و ارسال اطلاعت به دیتاگرید دیگر



pedramfj
پنج شنبه 08 مهر 1389, 17:46 عصر
سلام
من میخواهم یک دیتاگرید ایجاد کنم که یک ستون آن checkBox باشد.(تا اینجا مشکلی نیست).

زمانی که checkBox یک ردیف تیک زده شد , میخواهم اطلاعات این ردیف به یک دیتاگرید دیگر منتقل شود.

لزومی هم ندارد که در زمان انتخاب checkBox اطلاعات به دیتاگرید دیگر فرستاده شود (اول هر کدام را که میخواهیم انتخاب کنیم و با کلیک بر روی button اطلاعان به دیتاگرد دیگر ارسال شود).
تشکر.

mahziar
پنج شنبه 08 مهر 1389, 18:37 عصر
سلام
من میخواهم یک دیتاگرید ایجاد کنم که یک ستون آن checkBox باشد.(تا اینجا مشکلی نیست).

زمانی که checkBox یک ردیف تیک زده شد , میخواهم اطلاعات این ردیف به یک دیتاگرید دیگر منتقل شود.

لزومی هم ندارد که در زمان انتخاب checkBox اطلاعات به دیتاگرید دیگر فرستاده شود (اول هر کدام را که میخواهیم انتخاب کنیم و با کلیک بر روی button اطلاعان به دیتاگرد دیگر ارسال شود).
تشکر.


سلام

یک راه اینه (البته راههای زیاد دیگه ای هم هست )
تو CellClick برای اینکه تشخیص بدی چک باکس فشار داده شده


if (e.ColumnIndex==0"البته اگه چک باکس تو ستون اوله")
{
RowIndex=e.RowIndex;
}

RowIndex:: یک متغیر سراسری
خوب تو باتن هم که سطری از دیتا گرید که شماره ش در RowIndex هست رو به دیتا گرید دیگه انتقال میدی
کد درج در دیتا گرید دیگه هم که به وفور تو بخش پیدا میشه

البته این کدی که من نوشتم فقط برای درج یک سطر از دیتا گرید هست و اگه شما بخوای مثلا ده تا سطر رو تیک بزنی بعد انتفال بدی ، یه راه اینه که RowIndex رو به یه ارایه تغییر بدی که هر بار چکباکس تیک خورد شماره سطر به ارایه اضافه بشه ، بعد تو باتن یه حلقه for بندازی که سطر هایی کخ شماره ش تو ارایه هست به دیتا گرید دیگه انتقال پیدا کنه .

pedramfj
جمعه 09 مهر 1389, 19:06 عصر
سلام

یک راه اینه (البته راههای زیاد دیگه ای هم هست )
تو CellClick برای اینکه تشخیص بدی چک باکس فشار داده شده


if (e.ColumnIndex==0"البته اگه چک باکس تو ستون اوله")
{
RowIndex=e.RowIndex;
}
RowIndex:: یک متغیر سراسری
خوب تو باتن هم که سطری از دیتا گرید که شماره ش در RowIndex هست رو به دیتا گرید دیگه انتقال میدی
کد درج در دیتا گرید دیگه هم که به وفور تو بخش پیدا میشه

البته این کدی که من نوشتم فقط برای درج یک سطر از دیتا گرید هست و اگه شما بخوای مثلا ده تا سطر رو تیک بزنی بعد انتفال بدی ، یه راه اینه که RowIndex رو به یه ارایه تغییر بدی که هر بار چکباکس تیک خورد شماره سطر به ارایه اضافه بشه ، بعد تو باتن یه حلقه for بندازی که سطر هایی کخ شماره ش تو ارایه هست به دیتا گرید دیگه انتقال پیدا کنه .
دوستان کمک .
چگونه میتوانم این کار را انجام دهم ؟
راستش اصلا وقت ندارم و مهمتر اینکه کار با آرایه را کاملا خوب بلد نیستم.
اگر راه بهتری هست ....

flash118
شنبه 10 مهر 1389, 02:28 صبح
با سلام
شما با روشی که دوستمون گفتن رفتین اگه رفتین به جواب می رسین اگه رفتین و با با خطا مواجه شدید نمونه سورس یا کد رو ارسال کنید براتون خطا یابی کنیم موفق باشین

mmd2009
شنبه 10 مهر 1389, 03:02 صبح
با سلام.

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

mmd2009
شنبه 10 مهر 1389, 04:04 صبح
خب دوست عزیز گفتم یک مثال برات بنویسم بد نباشه :



http://up.iranblog.com/Files73/e44fc02fcc7943ee8163.JPG