PDA

View Full Version : سوال: غیر فعال کردن ستونی از گرید



niloofar norouzi
جمعه 08 خرداد 1388, 19:35 عصر
با سلام

در فرمی که تصویرش را ضمیمه کردم ستونی به نام AandP وجود دارد که مقادیر (Airframe,powerplant)را می پذیرد.می خوام وقتی powerplant انتخاب می شه ستون aircraft غیرفعال شود (یعنی از این ستون چیزی انتخاب نشود)و وقتیAirframe انتخاب میشه ستون Engin غیرفعال شود.
در کدام رویداد دیتاگرید این شرط را باید چک کنم؟

از راهنمایی شما سپاسگزارم

Mahdi1001
جمعه 08 خرداد 1388, 19:39 عصر
فک نمی کنم رویدادی باشه که مستقیم وقتی این سلول به تنهایی تغییر کرد عمل کنه.

niloofar norouzi
جمعه 08 خرداد 1388, 20:56 عصر
لطف می کنید راه حل پیشنهاد بدید

با تشکر

behzadk
جمعه 08 خرداد 1388, 21:03 عصر
در رویداد ;cellclick رویداد cellvaluechange رو فراخوانی کن و در اونجا همه کار ها رو انجام بده در ضمن اگه ابتدای پروژه هستی و با datagridview خیلی کار داری پیشنهاد می کنم از همین حالا با یه datagridview عالی کار کنی وگر نه اذیت میشه که من این ها رو پیشنهاد می کنم
componentone
syncfusion
janus
موفق باشی

Mahdi1001
جمعه 08 خرداد 1388, 21:34 عصر
فقط توی ایونت یادت نره که چک کنی همن سلول انتخاب شده یا نه ؟
با توجه به تغییر اون بقیه کدشو خودت که دیگه بلدی .

niloofar norouzi
یک شنبه 10 خرداد 1388, 13:25 عصر
ممنون از پاسختون



private void dgvAP_CellClick(object sender, DataGridViewCellEventArgs e)
{
dgvAP_CellClick()
}
private void dgvAP_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (dgvAP.CurrentRow.Cells["AandP_ID"].Value.ToString() == "1")
dgvAP.CurrentRow.Cells["Aircraft_Id"].ReadOnly = true;
}



مشکلم در فراخوانی CellClick است نمی دونم چه پارامتر هایی باید بهش بدم
لطف می کنید در این مورد کمکم کنید.
با تشکر

adinochestva
یک شنبه 10 خرداد 1388, 14:02 عصر
privatevoid dgvAP_CellClick(object sender, DataGridViewCellEventArgs e)
{
dgvAP_CellClick(null,null)
}
privatevoid dgvAP_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (dgvAP.CurrentRow.Cells["AandP_ID"].Value.ToString() == "1")
dgvAP.CurrentRow.Cells["Aircraft_Id"].ReadOnly = true;
}

niloofar norouzi
چهارشنبه 13 خرداد 1388, 15:50 عصر
if (dgvAP.CurrentRow.Cells["AandP_ID"].Value.ToString() == "1")

روی خطی که گذاشتم error میده

Object reference not set to an instance of an object.

asefy2008
چهارشنبه 13 خرداد 1388, 17:40 عصر
سلام این طور بنویس ببین مشکلت حل میشه:



if (dataGridView1.CurrentRow != null && dataGridView1.CurrentRow.Cells[0].Value!=null)
if (dataGridView1.CurrentRow.Cells[0].Value.ToString() == "1")

niloofar norouzi
چهارشنبه 13 خرداد 1388, 18:05 عصر
منظورتون اینه که از هر دو if استفاده کنم؟

asefy2008
چهارشنبه 13 خرداد 1388, 22:35 عصر
بله ،حل شد؟