PDA

View Full Version : آپدیت کردن چند سطر از DataGridView در سی شارپ



hichkasmehrdad
یک شنبه 02 آذر 1399, 21:08 عصر
با سلام و خسته نباشید خدمت اساتید و همراهان گرامی.من توی پروژه م توی یک حالتی باید حداقل 3 و حداکثر 11 سطر از دیتا گرید ویو رو آپدیت کنم و میخواستم بدونم دوستان چطور میتونن کمک کنن.
پروژه به این صورت هست که ابتدا باید یک پرونده که ممکنه به 1یا3یا5یا7یا9یا 11 نفر نیاز داشته باشم و باید براشون یک مقداری به عنوان دستمزد در یک فرم دیگه وارد کنم و با دستمزد قبلیشون جمع بشه.ممنون میشم اگه در قالب یک نمونه راهنمایی کنین

xman_dj
دوشنبه 03 آذر 1399, 16:05 عصر
سلام بهترین روشش اینه ک سمت دیتابیست اینکارو بکنی و بعد آپدیت کنی ومقدار نهایی رو نشون بدی در جدولت ویا در کوئری نمایشش بگی که مقادیر دو جدولو جمع بزنه و بعد نشون بده . ولی روشهای دیگه ای هم هست مثل انداختن جدولت توی datatable و با استفاده از یک حلقه به رکورد مورد نظر برسی و بروزرسانی datatable و وصل اون به گرید و یا استفاده از خاصیت لود جدول و نوشتن شرط ها موقع لود جدول و جایگزینی و یا اینکه خط به خط سطر های جدول رو بخونی و وقتی به سطر مورد نظر رسیدی جایگزین کنی.

xman_dj
دوشنبه 03 آذر 1399, 16:09 عصر
نمونه کد پیمایش سطر و ستون جدول




bool dgvIsComplete = true;
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
for (int j = 0; j < dataGridView1.Columns.Count; j++)
{
object obj = dataGridView1.Rows[i].Cells[j].Value;
if (string.IsNullOrEmpty(Convert.ToString(obj)))
{
dgvIsComplete = false;
break;
}
}
}

hichkasmehrdad
دوشنبه 03 آذر 1399, 18:03 عصر
ممنون از پاسختون دوست عزیز.روال کار پروژه من به اینصورت هست که ما باید توی فرم اصلی با زدن یک دکمه به فرم انتخاب پرونده بریم و اونجا بعد از انتخاب پرونده مورد نظر شماره پرونده رو به فرم اصلی بفرستیم و بعد از اون بر اساس چند پارامتر جستجو رو انجام بدیم که لیست افراد مورد نظرمون رو توی دیتاگرید نشون بدیم . پرونده مشخص میکنه که به 1 نفر یا بیشتر نیاز داریم که میتونه 3یا5یا7یا9 و یا 11 نفر باشه و بعد از انتخاب باید اطلاعات افراد به فرم دیگه انتقال داده بشه که تایید بشه و دستمزد رو هم وارد کنیم که با دستمزد قبلیشون جمع به.مشکلی که من دارم این هست که چجوری میتونم افراد بیشتر از 1 نفر رو انتخاب کنم و انتقال بدم به فرمم که یکی یکی اطلاعاتشون تایید بشه و دستمزد رو وارد کنم با مجموع دستمزدهای قبلیشون جمع بشه و واقعا ممنون میشم اگه در قالب یک نمونه بفرمایید که چجوری انجام میشه

Mahmoud.Afrad
سه شنبه 04 آذر 1399, 02:04 صبح
میتونی یک ستون از نوع چکباکس به دیتاگرید اضافه کنید که برای انتخاب نفرات ازش استفاده بشه

hichkasmehrdad
چهارشنبه 05 آذر 1399, 01:11 صبح
این کار رو کردم اما چجوری به فرم دیگه اونا رو انتقال بدم مشکل دارم باهاش.یعنی چجوری 3 یا 5 یا ... رو انتقال بدم و آپدیت کنم

Mahmoud.Afrad
پنج شنبه 06 آذر 1399, 01:51 صبح
برای انتقال قبلا خیلی سوال و البته جواب داده شده. جستجو کنید.

hichkasmehrdad
چهارشنبه 12 آذر 1399, 15:17 عصر
متاسفانه جواب سوال من نیستن چون اونا مخصوص یکی هستن اما من میخوام مثلا 3 تا انتخاب بشه و یکی یکی آپدیت بشن مثلا اولی وارد بشه آپدیت بشه بعد دومی بعد سومی و...
و اینکه واسه آپدیت کردن چجوری یک عدد دلخواه رو با اعداد قبلی جمع کرد ؟لطفا تو مثال نشون بدین چون پروژه م فقط لنگ این قضیه ست و استاد هم گیر داده که زودتر باید تحویل بدم ممنون میشم

hichkasmehrdad
پنج شنبه 13 آذر 1399, 19:43 عصر
انتقال بله اما آپدیت چند سطر نه متاسفانه.من باید اون چند سطر رو به فرم دیگه انتقال بدم و یکی یکی آپدیتشون کنم بصورت یکجا نمیشه

mr.sirwan
جمعه 14 آذر 1399, 00:25 صبح
انتقال بله اما آپدیت چند سطر نه متاسفانه.من باید اون چند سطر رو به فرم دیگه انتقال بدم و یکی یکی آپدیتشون کنم بصورت یکجا نمیشه

داداش شما اول طرز کار با امکانات سی شارپ و سینتکسش رو یاد بگیر بعد اگه جایی سوال داشتی بیا مطرح کن، شما هنوز تو تعریف یه آرایه یا لیستی از اطلاعات موندی، ما هرچی هم راهنماییت کنیم چیزی دستگیرت نمیشه، الان توی این موقعیت شما باید از آرایه یا لیست استفاده کنی و اطلاعاتت رو پاس بدی به فرم دوم، حالا تو فرم دوم هرکاری میخوای انجام بده

hichkasmehrdad
جمعه 14 آذر 1399, 18:05 عصر
من با آرایه ها و لیست ها آشنا هستم اما این اولین پروژه منه و وقت یادگیریش رو ندارم الان.شما لطف کن توی یه نمونه این قضیه رو توضیح بده بعدش آموزش سی شارپ رو کامل میکنم

hichkasmehrdad
جمعه 14 آذر 1399, 18:06 عصر
داداش شما اول طرز کار با امکانات سی شارپ و سینتکسش رو یاد بگیر بعد اگه جایی سوال داشتی بیا مطرح کن، شما هنوز تو تعریف یه آرایه یا لیستی از اطلاعات موندی، ما هرچی هم راهنماییت کنیم چیزی دستگیرت نمیشه، الان توی این موقعیت شما باید از آرایه یا لیست استفاده کنی و اطلاعاتت رو پاس بدی به فرم دوم، حالا تو فرم دوم هرکاری میخوای انجام بده



من با آرایه ها و لیست ها آشنا هستم اما این اولین پروژه منه و وقت یادگیریش رو ندارم الان.شما لطف کن توی یه نمونه این قضیه رو توضیح بده بعدش آموزش سی شارپ رو کامل میکنم