PDA

View Full Version : سوال: چه جوری میشه که یک دیتا گرید ویو پویا توسط یک کمبو باکس بسازیم؟



samser
پنج شنبه 28 دی 1391, 18:19 عصر
سلام دوستان..


میخوام یک دیتا گرید ویو بسازم که محتویاتش بر حسب مقدار یک کمبو باکس عوض شه...
مثلا پروژه راجب به تولیدی لباس هست
و یکی از فیلدهای جدول مشخصات لباس فیلد رنگ هستش.
مدیر میخواد از طریق کمبو باکس (که بر اساس رنگ هست) اطلاعات راجب به لباسها از رنگ خاص رو ببینه
مثلا تاریخ تولید .جنس لباس و....
و محتویات دیتا گرید ویو با توجه به کمبو باکس نمایانده بشه.
در واقع من میخوام ی select بر اساس مقادیر کمبو باکس داشته باشم.

کمبو باکس جدا از دیتا گرید ویو هست....

لطفا راهنمایی کنید.

samser
پنج شنبه 28 دی 1391, 20:34 عصر
اساتید بزرگ کمک کنین لطفا...:گریه:

sobhmoud
پنج شنبه 28 دی 1391, 22:06 عصر
می تونی تو جدول اصلیت یک فیلد تعریف کنی که رنگ ها رو اونجا میزاری و برای select با where اونایی رو می خونی که تو تکست کامبو باکست برای ذخیره هم یک کامبو باکس می ذاری که رنگ ها رو داره وبراساس اون فیلد رنگ جدول اصیلتو پر می کنی

samser
پنج شنبه 28 دی 1391, 23:42 عصر
خسته نباشی!!!
سوالمو از نو بخون لطفا...منظورم اینه که من میخوام با کمبو باکس و دیتا گرید ویو از بانک گزارش بگیرم...و بانکم اطلاعات داخل گرید ویو هست نه دیتا بیس(البته تو ذهنت تصور کن)...شما فرض کن بانک من گرید ویو هست...اوکی؟

plus
جمعه 29 دی 1391, 01:28 صبح
DataTable dataTable;
..
..
dataAdapter.Fill(dataTable);
dataGridView1.DataSource = dataTable;
...
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
dataTable.DefaultView.RowFilter = string.Format("[ColorIndex] = {0}", comboBox1.SelectedValue);
}

میتونی با استفاده از مشخصه RowFilter مربوط به DefaultView ی DataTable، یک View با فیلتر خاص از DataTable بگیری.

samser
جمعه 29 دی 1391, 04:08 صبح
ممنونم سعی میکنم استفاده کنم...

rezaei_y
جمعه 29 دی 1391, 09:36 صبح
با جی کوئری هم میشه اینکار رو انجام داد یه سرچ بزن(معذرت یه لحظه خیال کردم asp.net)

website.expert
جمعه 29 دی 1391, 11:15 صبح
با جی کوئری هم میشه اینکار رو انجام داد یه سرچ بزن

jQuery تو #C؟؟؟!!!:گیج:

samser
جمعه 29 دی 1391, 13:43 عصر
آقای رضایی لطفا به سوالم توجه کن بعدش من خواستم دوستان طریقه ی ساختشو بگن نه بگید برو سرچ کن!!!لطفا دوستانی که میخوان کمک کنن اینجوری جواب ندن...

khokhan
جمعه 29 دی 1391, 18:28 عصر
سلام

عزیز جان
1 - یه حلقه از نوع switch تعریف کن حالا سه یا چهار یا هر چند تا گزینه که می خوای تو کمبو باکس باشه توی ااین حلقه کوئری قرار بده

2 -بعدش هم دیتابیس مربوط به دیتا گرید رو با توجه به تکست کمبو باکس فیلتر کن

اون وقت می بینی که حالی میده :قهقهه:

تقریبا کد شما باید اینطوری باشه


void serach()
{
string query = null;
try
{
switch (comboBox1.Text)
{
case "Fisrt name": { query = "SELECT name,family,phone FROM phone WHERE name LIKE '" + textBox1.Text + "%'"; break; }
case "Last name": { query = "SELECT name,family,phone FROM phone WHERE family LIKE '" + textBox1.Text + "%'"; break; }
case "Phone number": { query = "SELECT name,family,phone FROM phone WHERE phone like '" + textBox1.Text + "%'"; break; }
default: { break; }
}

con = new OleDbConnection(connect);
con.Open();
command = new OleDbCommand();
command.CommandText = query;
command.Connection = con;
adapter = new OleDbDataAdapter();
adapter.SelectCommand = command;
objDataTable = new DataTable();
adapter.Fill(objDataTable);
con.Close();
dataGridView1.DataSource = objDataTable;
}
catch{ }
}

samser
جمعه 29 دی 1391, 21:11 عصر
نه آقا حل شد اما نه به روش شما...یکی از دوستان کمک کرد...هرکی خواست بگه تا بهش روششو بگم.