PDA

View Full Version : متد جستجو



programerinfonet
چهارشنبه 29 شهریور 1391, 10:07 صبح
سلام دوستان
من تو برنامه ام یک کمبوباکس و یک تکست باکس دارم . و همچنین کمبوباکسم دارای 10 آیتم
حالا می خوام متد جستجوی لایک بنویسم که هر کدوم از آیتم های کمبوباکس انتخاب شد جستجو طبق اون فیلد و با متن تکست باکس انجام بشه
اما این جوری باید دیتاست آدابتر کامند و ... 10 تا تعریف کنم
چه طوری میشه که با یک بار تعریف کردن این اشیاأ کار رو پیش برد در اصل می خوام کد کوتاه و منطقی باشه
لطفأ کمکم کنید
ممنون

Nima_kyan
چهارشنبه 29 شهریور 1391, 10:20 صبح
select * from Table_Name where Field1=TextBox1.Text and Field2 Like "%Combobox.Text%"

programerinfonet
چهارشنبه 29 شهریور 1391, 10:25 صبح
نه دوست عزیز فکر کنم منظورمو بد رسوندم . ببینید :
آیتم های کمبوباکس (نام و نام خانوادگی و کد ملی و ...)
حالا میخوام مثلأ انتخاب کردم نام در داخل تکست باکس نام را وارد کنم و نتیجه در دیتاگرید بیاد
حتی اینم می تونم بنویسم
منظور من اینه که باید برای هر کدوم از آیتم های کمبوباکس یک بار شی ء تعریف کنم و ... یعنی 10 تا کد تکراری
من می خوام این نباشه

Nima_kyan
چهارشنبه 29 شهریور 1391, 10:38 صبح
در این صورت فکر میکنم باید آیتم ها رو در یه جدول در بانک ذخیره کنی (یه فیلد برای ذخیره DisplayMemember که در کمبو نمایش داده میشه و یه فیلد برای ValueMemember که باید مقدار "نام ستون"یی که قراره جستجو بر اساس اون انجام شه باشه)
حالا دستور بالارو به این شکل تغییر میدی

Select * from Table_Name where @Parameter1 Like "%@Parameter2%"
Parameter1 میشه ValueMemember کمبو و Parameter2 میشه همون DisplayMemember کمبوت.

programerinfonet
چهارشنبه 29 شهریور 1391, 10:42 صبح
راه دیگه ای نیست ؟؟
دوستان هم اگه کمک کنن بد نیست

hamidreza1376
چهارشنبه 29 شهریور 1391, 16:36 عصر
گفتی تکراری یاد کلاس ها افتادم.
چرا از کلاس استفاده نمی کنی؟

ali_habibi1384
چهارشنبه 29 شهریور 1391, 17:57 عصر
اگر نام ستونهات رو متناظر با مقادير داخل كومبو ساخته باشي با داشتن انديس Item در كومبو ميتوني براحتي به شماره انديس ديتاتيبل يا گريدت اشاره كني و اونو برداري و بجاي پارامتري كه آقاي كيان گفتن بذاري. خب خوبي اين روش اينه كه مثلا اگر متنهاي داخل گريد فارسي باشه و كومبوهات هم فارسي باشه نياز نيست نام واقعي ستون رو داشته باشي.
من خودم واسه چنين جستجوهايي هميشه ميام و در رويداد لود فرم هدر هاي گريد رو به كومبو اضافه ميكنم

esmaili65
چهارشنبه 12 مهر 1391, 19:51 عصر
دوستان من هم این سوال رو دارم. اما به این شکل :
تو دیتا گرید ویوی من مشخصات کتاب ها درج شده.
و یک کمبوباکس دارم که در اون آیتم های رده بندی کتاب هام مثلا رایانه ، حسابداری ، نقشه کشی ثبت شده.
میخوام جستجویی داشته باشم که با انتخاب هر یک از آیتم های کمبوباکس ، دیتا گرید ویو در ستون رده بندیش جستجو انجام بده.
خودم تا اینجا جلو رفتم اما جواب نگرفتم و سطری داخل دیتا گرید ویوم نمایش داده نمیشه:


if (cmbCategori.SelectedValue != null)
{
cmd.CommandText += " AND ca_name LIKE '%" + cmbCategori.SelectedItem + "%'";
}