PDA

View Full Version : سوال: راهنمایی برای کد اضافه کردن row در dataview



mahlake
سه شنبه 23 اردیبهشت 1393, 14:23 عصر
با سلام خدمت اساتید محترم...
من این کد را قبلا برای data grid view نوشته بودم و حالا همین رو برای dataview میخوام بنویسم اما نمیتونم...
لطفا کمکم کنید...
row.CreateCells(this.dataGridView2, shb.Trim(), trka.Trim(), cpn.Trim(), mob.Trim(), a, shm.Trim(), shsh.Trim(), clr.Trim(), shs.Trim(), cname.Trim(), comboBox1.Text.Trim(), trkb.Trim());
this.dataGridView2.Rows.Add(row);

irartesh
سه شنبه 23 اردیبهشت 1393, 17:06 عصر
چه اروری دریافت میکنید!!!

mahlake
سه شنبه 23 اردیبهشت 1393, 19:23 عصر
چه اروری دریافت میکنید!!!

مرسی از وقتی که گذاشتید...

این خط یه DataGridViewRow به نام row میسازه و اون رو نیو میکنه
DataGridViewRow row = new DataGridViewRow();


تو این خط هم که میاد یک ردیف ایجاد میکنه
row.CreateCells(this.dataGridView2, shb.Trim(), trka.Trim());


اینجا هم دیتا ها رو میریزه تو دیتا گرید
this.dataGridView2.Rows.Add(row);


البته جسارت نباشه من کد را توضیح دادم چون برای خودم مرور کنم که دقیقا چی دارم و چی میخوام:قلب::قلب::قلب:

حالا من میخوام دقیقا همین کد رو برای یک dataview به نام dg2dataview بنویسم یعنی دیتا ها رو به جای دیتا گرید تو دیتا ویو بریزه...


حالا مشکل اینجاست که من تو همین کد وقتی جای dataGridView2 دیتاویو dg2dataview را میزارم ارور میده و میگه اشتباه هست...

من چطور با این روش اطلاعات رو به جای این که تو data grid view بریزم، توی data view بریزم؟

irartesh
سه شنبه 23 اردیبهشت 1393, 19:46 عصر
احتمالا باید به این صورت باشه(بصورت عملی تست نکردم)...باید با یه دیتا تیبل سطر ها رو اضافه کنید و بعد دیتا تیبل رو به دیتا ویو بدید.

DataTable b = new DataTable();
b.Rows.Add("aaaa","bbb");
DataView a = new DataView(b);


================================================== =========================================

جواب سوالتون رو پیدا کردم

خط اول یدونه دیتا ویو درست میکنیم (که من اینجا تیبلی رو بهش اضافه کردم)
حالا تو خط دوم میایم برای این دیتا ویو یه سطر جدید درست میکنیم...خط 3 و 4 و 5 هم که اضافه کردن ایتم به سلول های سطر هستش و خط ششم هم اعلام میکنیم که ویرایش تموم شد(سطر جدید اضافه بشه)


DataView dv = new DataView(objset.Tables[0]);
DataRowView drv = dv.AddNew();
drv[0] = 5;
drv[1] = "column1";
drv[2] = "column2";
drv.EndEdit();

mahlake
جمعه 02 خرداد 1393, 11:51 صبح
احتمالا باید به این صورت باشه(بصورت عملی تست نکردم)...باید با یه دیتا تیبل سطر ها رو اضافه کنید و بعد دیتا تیبل رو به دیتا ویو بدید.

DataTable b = new DataTable();
b.Rows.Add("aaaa","bbb");
DataView a = new DataView(b);


================================================== =========================================

جواب سوالتون رو پیدا کردم

خط اول یدونه دیتا ویو درست میکنیم (که من اینجا تیبلی رو بهش اضافه کردم)
حالا تو خط دوم میایم برای این دیتا ویو یه سطر جدید درست میکنیم...خط 3 و 4 و 5 هم که اضافه کردن ایتم به سلول های سطر هستش و خط ششم هم اعلام میکنیم که ویرایش تموم شد(سطر جدید اضافه بشه)


DataView dv = new DataView(objset.Tables[0]);
DataRowView drv = dv.AddNew();
drv[0] = 5;
drv[1] = "column1";
drv[2] = "column2";
drv.EndEdit();




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

خطا:
The name 'objset' does not exist in the current context c:\usr\mahlake\desk\r\r\ia\class1.cs

irartesh
یک شنبه 18 خرداد 1393, 14:03 عصر
چون شما در اینجا دیتاست رو اضافه نکردید...شما نام دیتاست خودتون رون به جای objset.Tables[0] قرار بدید...مثلا برای دیتاستی به نام dataset1 به این صورت عمل کنید dataset1.Tables[0]
خط اول رو تغییر بدید:


DataView dv = new DataView(dataset1.Tables[0]);


البته شما میتونید بجا دیتاست مورد دیگری رو اضافه کنید.منظورم اینه که ما اینجا از دیتاست صرفا برای پر کردن دیتا ویو استفاده میکنیم