1 ضمیمه
فرستادن اطلاعات یک dgv به dgv دیگر
توی برنامم فرمی به شکل زیر دارم.
در
dgv سمت راست اطلاعات جدول teacher که عبارت از Teacher_ID و Name و Family وجود داره و dgv سمت چپ خالیست.
میخواهم هرچند تا از ردیفهایی که در dgv سمت راست انتخاب میکنم با استفاده از Button ی که علامت جهت به سمت چپ را دارد به dgv سمت چپ منتقل شود.
در dgv سمت راست ستونی برای select کردن ردیفها نیز وجود دارد.
میشه کدش رو برام بگذارید
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
vTeacherTableAdapter.Insert();
داخل پرانتز با استفاده از کد زیر مقدار ها رو انتقال بده:
DataGridView.CurrentRow.Cells[1].Value
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
من واسش کد زیر رو نوشتم ولی جواب نمیده
میشه کمک کنید فوریه
privatevoid btnGoLeft_Click(object sender, EventArgs e)
{
DataGridViewRow dgr;
for (int i = 0; i < dgvAll.Rows.Count; )
{
if ((bool)dgvAll[0, i].Value == true)
{
dgr = dgvAll.Rows[i];
dgvAll.Rows.Remove(dgr);
dgvSelected.Rows.Add(dgr);
dgvSelected[0, dgr.Index].Value = false;
}
else
i++;
}
}
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
سلام
یعنی چی جواب نمیده ؟ یعنی ارور می ده ؟؟؟ اگه آره لطفا ارور رو بذارید .
در ضمن شما تو این کد به قسمت else نیازی ندارید در خود for اگه یک ردیف انتخاب نشده باشه ، داخل if نمیشه و بعد یکی به i اضافه میشه .
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
dgvSelected.Rows.Add(dgr);
تو این قسمت مشکل دارید؟
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
ايا گريد دوم به جدولي بايند است ؟
اگر اينطور است مي بايست ازگريد اول remove كرده و به جدول دوم اضافه كنيد
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
روش های متفاوتی برای حل این مسئله وجود داره، مثلا می تونی از همون dgv.Rows.Add استفاده کنی و یا تو یه foreach از SelectedRows استفاده کنی که بیاد و برای تک تک Row های Selected مقادیرشون رو از یه گرید به اون یکی کپی کنه.
1 ضمیمه
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
dgv دومی به جدولی متصل نیست فقط اطلاعات جدولی که در dgv اولی هست در آن باید قرار گیرد
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
نقل قول:
نوشته شده توسط
karimi84
ايا گريد دوم به جدولي بايند است ؟
اگر اينطور است مي بايست ازگريد اول remove كرده و به جدول دوم اضافه كنيد
گريد دوم به جدولي متصل نیست فقط اطلاعات جدولی که در گرید اول وجود دارد باید در آن قرار گیرد
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
نقل قول:
نوشته شده توسط
h.jaza
روش های متفاوتی برای حل این مسئله وجود داره، مثلا می تونی از همون dgv.Rows.Add استفاده کنی و یا تو یه foreach از SelectedRows استفاده کنی که بیاد و برای تک تک Row های Selected مقادیرشون رو از یه گرید به اون یکی کپی کنه.
میشه با foreach یه مثال برام بزنید؟
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
اون کدی که مشکل می گیره این طور بنویس ببین چی میشه:
if
(dgvAll[0, i].Value != null)
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
مثلا خیلی ساده میشه اینجوری گفت:
foreach (DataGridViewRow item in dataGridView1.SelectedRows)
{
dataGridView2.Rows.Add(item.Cells[0].Value, item.Cells[1].Value, item.Cells[2].Value);
}
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
نقل قول:
نوشته شده توسط
asefy2008
اون کدی که مشکل می گیره این طور بنویس ببین چی میشه:
if
(dgvAll[0, i].Value != null)
دستتون درد نکنه.
دیگه error نمیده
فقط یه مشکل دیگه هست. وقتی چند تا ردیف رو select میکنم و به dgv دوم میفرستم توی dgv دومی فقط چند ردیف خالی میاد و اطلاعات dgv اول وارد آن نمیشه
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
dataGridView1.Rows.Add();
داخل پرانتز مقدار رو باستفاده از کد زیر قرار بده
dgvall[0,i].value.tostring();
به اندازه تعداد ستون هات
موفق باشی
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
نقل قول:
نوشته شده توسط
h.jaza
مثلا خیلی ساده میشه اینجوری گفت:
foreach (DataGridViewRow item in dataGridView1.SelectedRows)
{
dataGridView2.Rows.Add(item.Cells[0].Value, item.Cells[1].Value, item.Cells[2].Value);
}
ممنون با این کد اطلاعات وارد dgv دوم میشه
فقط یه مشکل اینکه وقتی چند ردیف از dgv اول رو select میکنم و میخواهم به dgv دوم ببرم فقط آخرین ردیفی که انتخاب شده رو میبره و بقیه ردیفهای انتخابی رو نمیبره
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
نقل قول:
نوشته شده توسط
asefy2008
dataGridView1.Rows.Add();
داخل پرانتز مقدار رو باستفاده از کد زیر قرار بده
dgvall[0,i].value.tostring();
به اندازه تعداد ستون هات
موفق باشی
ممنون
این کدو باید چجوری و کجای برنامه نوشت؟
وقتی گفتید به اندازه تعداد ستونها یعنی اگه 4 تا ستون دارم کد بالا را 4 بار بنویسم؟
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
این طور بنویس(اگر 4تا ستون داشتی):
dataGridView1.Rows.Add(DGVall[0, i].Value.ToString(), DGVall[1, i].Value.ToString()
, DGVall[2, i].Value.ToString(), DGVall[3, i].Value.ToString());
DGVall.Rows.Remove(DGVall.Rows[i]);
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
نقل قول:
ممنون با این کد اطلاعات وارد dgv دوم میشه
فقط یه مشکل اینکه وقتی چند ردیف از dgv اول رو select میکنم و میخواهم به dgv دوم ببرم فقط آخرین ردیفی که انتخاب شده رو میبره و بقیه ردیفهای انتخابی رو نمیبره
من خودم چک کردم، هیچ مشکلی نداره، همه رو منتقل می کنه...
احتمالا مشکل از چیز دیگه ایه...
نقل قول: فرستادن اطلاعات یک dgv به dgv دیگر
یه مشکل دیگه
توی یک فرم دیگه یه dgv دارم که دارای یک ستون با نام Term_ID_FK میباشدکه نشان دهنده تاریخ شروع ترمهاست و در چند ردیف این ستون یکسان میباشد.
میخوام با کلیک روی دکمه Edit تو یه dgv دیگه تمام ردیفهایی که Term_ID_FK آنها یکسان است رو نشون بدم
مثلا ردیفهایی که Term_ID_FK آنها 04/01/1388 است رو تو dgv دوم نشون بدم
البته dgv دومی تو یه فرم دیگست
اطلاعاتی که تو dgv اول هست از جدول TermTeacher که دارای فیلدهای TermTeacher_IDو Teacher_ID_FK و Term_ID_FK هست.
اطلاعاتی که تو جدول دوم قرار میگیره فقط ستونهای Term_ID_FK و Teacher_ID_FK