PDA

View Full Version : حذف وويرايش ركوردازديتاگرايد



javad13
پنج شنبه 10 اسفند 1391, 11:28 صبح
سلام
من يك ديتاگرايددارمو ودوتا دكمه

كه ميخام با كليك روي ركوردازديتاگرايد وبعد كليك روي دكمه حذف اون ركوردحذف بشه وباكليك روي دكمه ويرايش اون ركورد ويرايش بشه

چطوري بايد دستورركوردانتخاب شده رو بنويسم واين عمليات روانجام بدم

ممنونم

mohammad2407
پنج شنبه 10 اسفند 1391, 11:30 صبح
میخوای لینک کار کنی یا کانکشن استرینگ

javad13
پنج شنبه 10 اسفند 1391, 11:39 صبح
كانكشن استرينگ كارميكنم

veniz2008
پنج شنبه 10 اسفند 1391, 13:18 عصر
سلام
من يك ديتاگرايددارمو ودوتا دكمه

كه ميخام با كليك روي ركوردازديتاگرايد وبعد كليك روي دكمه حذف اون ركوردحذف بشه وباكليك روي دكمه ويرايش اون ركورد ويرايش بشه

چطوري بايد دستورركوردانتخاب شده رو بنويسم واين عمليات روانجام بدم

ممنونم
سلام.
دوست من این سبک طراحی متعلق به خواهرزاده 10 ساله من هست! (یعنی کسانی که برای رسیدن به 2 اول میگن 1 و بعدش میگن حالا بعد از 1 میشه 2). چرا یه دفعه نگیم 2؟
اینکه اول کلیک کنیم رو سطر و بعد به دکمه بگیم اون سطر کلیک شده رو حذف کن، منسوخ شده (و صد البته بچگانه ) هست. روش بهتر اینه که دو ستون برای حذف و ویرایش و از جنس button به گرید اضافه کنید(نتیجش اینه که هر رکورد دو دکمه حذف و ویرایش براش وجود داره و راحت میتونید کارتون رو انجام بدید).
البته اینم بگم من خودم شخصا از گرید برای ویرایش استفاده نمیکنم. چون اعتقادم اینه که هر شی ای رو برای یک هدف خاص ایجاد کردن، گرید هم بیشتر جنبه نمایش داره و بهتره تا حد امکان از انجام عملیات بر روی اون خودداری بشه (مخصوصا برای ویرایش مگر مجبور باشیم).
موفق باشید.

javad13
پنج شنبه 10 اسفند 1391, 13:25 عصر
من همين كاري كه گفتي رو خواستم انجام بدم اما كدشونتونست بنويسم ميتوني واگربلدي بزارواسه من
ممنون

veniz2008
پنج شنبه 10 اسفند 1391, 13:38 عصر
شما دو ستون جدید از نوع button اضافه کنید.
حالا از رویداد cellmouseclick برای حذف و ویرایش استفاده کنید:
فرض کنید که دکمه حذف شما، اولین دکمه (یعنی ایندکسش 0 باشه) و id رکورد سومین ستون (با ایندکس 2) باشه :

SqlConnection con = new SqlConnection("Data Source =(local);Initial Catalog=test1;Integrated Security=True");
if (dataGridView1.CurrentRow.Cells[0].Selected == true)
{
SqlCommand cmd = new SqlCommand("delete from tblname where id = @id",con);
cmd.Parameters.AddWithValue("@id",dataGridView1.CurrentRow.Cells[2].Value );
con.Open();
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("اطلاعات با موفقیت حذف گردید");
}