PDA

View Full Version : جستجو کردن اطلاعات و اضافه کردن اطلاعات به دیتا گرید ویو با شرط اینکه نتیجه جستجو قبلی حذف نگردد



mr.siahatgar
چهارشنبه 20 مهر 1390, 14:57 عصر
با سلام
من یه پروژه دارم که کاربر می تواند نتیجه جستجویی که در جدول دیتا بیس ذخیره شده را در دیتا گرید ویو ببیند
حالا میخواهم یه چک باکس قرار دهم که اگر کاربر جستجویی جدیدی را خواست به جستجوی قبلی اضافه کند .دیتا گرید ویو هم اطلاعات قبل را نشان دهد و هم اطلاعات حاصل از جستجوی جدید
مثال
کاربر عنوان کتابهای فیزیک را جستجو میکند و در دیتا گرید ویو نشان داده می شود
حال کاربر میخواهد عنوانهای کتاب شیمی را هم جستجو کند و در کنار جستجوی قبلی در دیتا گرید ویو نشان داده شود
میشه لطف کنید راهنمایی کنید

electro_esma
چهارشنبه 20 مهر 1390, 19:21 عصر
با سلام شما دوست عزیز

در قسمت آغازین فرمت اول بنویس


DataSet ods = newDataSet();
OleDbDataAdapter oda = newOleDbDataAdapter();

یعنی یه مقدار از دیتا ست و دیتا تیبلت ساختی برای تمام فرمت .


حالا در رویداد کلیدت یه شرط بنویس . جهت چک کردن چک باکست .
if (checkBox1.CheckState == CheckState.Checked)
{

در این جا عمل فراخوانی و یا سرچت از دیتا بیست رو بنویس

}
else
{

DataSet ods = newDataSet();
OleDbDataAdapter oda = newOleDbDataAdapter();

در این جا عمل فراخوانی و یا سرچت از دیتا بیست رو بنویس با دیتا ست و دیتا آداپتور جدید
}

به طور خلاصه بعد از عمل تیک زدن چک باکس شما یه دیتا ست و دیتا تیبل جدید خواهی داشت و دیگه اطلاعات زیر هم نمی یان و بعد از هر بار سرچ اطلاعات جدید اضافه می شن.
اگه تیک هم نزنه اطلاعات چون از دیتا تیبل و دیتا ست قبلی دارن استفاده می کنن اطلاعات روی هم ذخیره می شن.

من امتحان کردم. کامل داره جواب می ده.

موفق باشید

mr.siahatgar
جمعه 22 مهر 1390, 07:29 صبح
با سلام شما دوست عزیز

در قسمت آغازین فرمت اول بنویس


DataSet ods = newDataSet();
OleDbDataAdapter oda = newOleDbDataAdapter();

یعنی یه مقدار از دیتا ست و دیتا تیبلت ساختی برای تمام فرمت .


حالا در رویداد کلیدت یه شرط بنویس . جهت چک کردن چک باکست .
if (checkBox1.CheckState == CheckState.Checked)
{

در این جا عمل فراخوانی و یا سرچت از دیتا بیست رو بنویس

}
else
{

DataSet ods = newDataSet();
OleDbDataAdapter oda = newOleDbDataAdapter();

در این جا عمل فراخوانی و یا سرچت از دیتا بیست رو بنویس با دیتا ست و دیتا آداپتور جدید
}

به طور خلاصه بعد از عمل تیک زدن چک باکس شما یه دیتا ست و دیتا تیبل جدید خواهی داشت و دیگه اطلاعات زیر هم نمی یان و بعد از هر بار سرچ اطلاعات جدید اضافه می شن.
اگه تیک هم نزنه اطلاعات چون از دیتا تیبل و دیتا ست قبلی دارن استفاده می کنن اطلاعات روی هم ذخیره می شن.

من امتحان کردم. کامل داره جواب می ده.

موفق باشید
با سلام
متاسفانه من متوجه منظور شما نشدم
البته یاداوری کنم که بانک اطلاعاتی من sql است
میشه بیشتر توضیح بدبد

mr.siahatgar
جمعه 22 مهر 1390, 18:14 عصر
up
لطفا راهنمایی کنید

shahrzad87
جمعه 22 مهر 1390, 22:33 عصر
این تایپیک شاید بتونه کمکتون کنه:

مطالبی کمیاب در مورد Data Grid View


http://barnamenevis.org/showthread.php?245726-%D9%85%D8%B7%D8%A7%D9%84%D8%A8%DB%8C-%DA%A9%D9%85%DB%8C%D8%A7%D8%A8-%D8%AF%D8%B1-%D9%85%D9%88%D8%B1%D8%AF-Data-Grid-View&highlight=%D8%AF%DB%8C%D8%AA%D8%A7%DA%AF%D8%B1%DB% 8C%D8%AF%D9%88%DB%8C%D9%88

shahrzad87
جمعه 22 مهر 1390, 22:51 عصر
با سلام شما دوست عزیز

در قسمت آغازین فرمت اول بنویس


DataSet ods = newDataSet();
OleDbDataAdapter oda = newOleDbDataAdapter();

یعنی یه مقدار از دیتا ست و دیتا تیبلت ساختی برای تمام فرمت .


حالا در رویداد کلیدت یه شرط بنویس . جهت چک کردن چک باکست .
if (checkBox1.CheckState == CheckState.Checked)
{

در این جا عمل فراخوانی و یا سرچت از دیتا بیست رو بنویس

}
else
{

DataSet ods = newDataSet();
OleDbDataAdapter oda = newOleDbDataAdapter();

در این جا عمل فراخوانی و یا سرچت از دیتا بیست رو بنویس با دیتا ست و دیتا آداپتور جدید
}

به طور خلاصه بعد از عمل تیک زدن چک باکس شما یه دیتا ست و دیتا تیبل جدید خواهی داشت و دیگه اطلاعات زیر هم نمی یان و بعد از هر بار سرچ اطلاعات جدید اضافه می شن.
اگه تیک هم نزنه اطلاعات چون از دیتا تیبل و دیتا ست قبلی دارن استفاده می کنن اطلاعات روی هم ذخیره می شن.

من امتحان کردم. کامل داره جواب می ده.

موفق باشید

فکر کنم منظورشون این کد بوده، اما من تست نکردم نمی دونم جواب می ده یا نه :



DataSet1 DS1 = new DataSet1();
DataSet1.Tbl_NameDataTable DT1 = new DataSet1.Tbl_NameDataTable();

private void Form1_Load(object sender, EventArgs e)
{

}

private void button1_Click(object sender, EventArgs e)
{
if (checkBox1.Checked)
{
//کدهای جستجوی اول را با دیتاست اصلی بنویسید
}
else
{
DS1 = new DataSet1();
DT1 = new DataSet1.Tbl_NameDataTable();
// کدهای جستجو دوم را با دیتاست جدیدی که ایجاد شده بنویسید
}
}