PDA

View Full Version : ارسال سطرهای انتخابی دیتاگرید به دیتاست



programerinfonet
پنج شنبه 24 بهمن 1392, 16:52 عصر
سلام دوستان من میخوام چند سطر از دیتاگرید رو انتخاب کنم و توی یک کامبو مشخص کنم که سطرهای انتخاب شده رو بر اساس کدوم ستون مرتب کنه و توی یک دیتاست دیگه بریزه
اگه میشه کمک کنید خیلی ضروریه
ممنون

mehrdad.ghorbaniyan
پنج شنبه 24 بهمن 1392, 18:24 عصر
دوست عزیز شما یک چک باکس تو دیتا گرید اولت بذار.بعد کد زیرو موقعی که میخوای بریزه تو دیتا گرید دوم بذار :


count_chek_selected = 0;
count = 0;
where = "";
///------------------------------------------------------------------

for (int j = 0; j < gv_phonebook.RowCount; j++)
{
if (Convert.ToBoolean(gv_phonebook.Rows[j].Cells[1].Value) == true)
count_chek_selected = 1;
}
///------------------------------------------------------------------
if (count_chek_selected == 1)
{

///------------------------------------------------------------------

for (int i = 0; i < gv_phonebook.RowCount; i++)
{
if (Convert.ToBoolean(gv_phonebook.Rows[i].Cells[1].Value) == true)
{
count_chek_selected = 1;
chek_where();
where += gv_phonebook.Rows[i].Cells[0].Value;
count++;
}
}
///------------------------------------------------------------------
gvemail.datasource = sql.fill("select * from phonebook where id=" + where);



البته من اینو همینطوری نوشتم منظورم اینکه کدش بهینه و جم و جور نیست.خودت یکم جم و جورش کن ولی مشکلتو حل میکنه

programerinfonet
پنج شنبه 24 بهمن 1392, 18:31 عصر
حالا اگه بخوایم به جای چک باکس بگیم که سطرهای که کاربر کلید کنترلرو نگهداشته و انتخاب کرده چی ؟
چه تغییراتی بدم ؟

mehrdad.ghorbaniyan
پنج شنبه 24 بهمن 1392, 18:50 عصر
حالا اگه بخوایم به جای چک باکس بگیم که سطرهای که کاربر کلید کنترلرو نگهداشته و انتخاب کرده چی ؟
چه تغییراتی بدم ؟

من نمیرسم کدشو برات بزنم ولی با خاصیت SelectedRows میشه.قبلاً انجام دادم.یه ویژگی دیتا گرید داره به نام multiselect که اونم باید true بشه

راستی تو کد بالا من یادم رفت این تابع را بنویسم.تابع زیرم بهش اضاف کن :

private void chek_where()
{
if (count > 0)
{
where += " or id=";
}
}