PDA

View Full Version : سوال: حذف در datagridview(کمک فوری)



mahboub_gol
سه شنبه 15 اردیبهشت 1388, 16:47 عصر
من دو تا datagridview دارم که یکی با موضوعات پر میشه ویکی هم شامل جزییات این موضوعات است
من میخواهم وقتی روی یکی از سطرهای datagridview که شامل موضوعات است کلیک کردم ودکمه deleteرا زدم جزییات همان موضوع را در datagridviewجزییات با هم حذف کنه

asefy2008
سه شنبه 15 اردیبهشت 1388, 18:01 عصر
دوست من بهتر نیست توضیحات بیشتری بدی مسلما شما روش حذف رو می دونید و ما هم برای کمک(اگر قابل باشیم) نیاز داریم کدتون رو ببینیم.

NewFoxStudent
سه شنبه 15 اردیبهشت 1388, 18:39 عصر
اگه از بانک استفاده میکنی
بهتره رکورد های انتخاب شده رو توی بانک حذف کنی و دوباره گریدها رو پر کنی

برای حذف از گرید هم باید یک مقداری برای ارتباط بین دو تا گرید وجود داشته باشه
مثلاً ID هر موضوع توی گرید مربوط به توضیحات هم باشه
این طوری میتونی رکورد مربوط به گرید اول رو پاک کنی و مقدار ID رو به متدی بفرستی و توی اون متد با یه حلقه تمام ردیفهایی رو که ID برابر با پارامتر دارند رو حذف کنی

امیدوارم متوجه منظورم شده باشی

sd.CSharpProgrammer
سه شنبه 15 اردیبهشت 1388, 23:45 عصر
با سلام خدمت دوستان

دوست عزیز بهترین راه اینه که اول رکوردهای مورد نظر رو در پایگاه داده حذف کنی و برای حذف اونا در دیتاگراید از کد زیر استفاده کنی :




private void dataGridView1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Delete && dataGridView1.SelectedRows.Count > 0)
{
int index = dataGridView1.SelectedRows[0].Index;

dataGridView1.Rows.RemoveAt(index);
dataGridView2.Rows.RemoveAt(index);
}
}



توضیح :
خاصیت SelectedRows سطرهایی که کاربر انتخاب کرده رو نگهداری میکنه. عنصر 0 این خاصیت (SelectedRows[0]) همیشه به اولین سطری که کاربر انتخاب کرده اشاره میکنه. با استفاده از این روش میتونی سطر انتخاب شده رو از دیتاگراید حذف کنی.
البته فراموش نکنی که اول خاصیت MultiSelect رو false کنی و بعد از این کد استفاده کنی!!!

موفق باشی