PDA

View Full Version : جستجو در datagridview



ebrahimshekoohy
سه شنبه 17 بهمن 1391, 18:19 عصر
سلام دوستان
چطور می تونم با استفاده از یک textbox با زدن هر کاراکتر datagridview آپدیت بشه.
مثلا دیتاگریدویو شامل اسم باشه و تو تکست باکس کلمه ع که بزنیم کل علی و علی رضا ها بیان

ordebehesht
سه شنبه 17 بهمن 1391, 18:50 عصر
یه dataview از داده هی جدولت پر کن بعد با استفاده از کد زیر فیلتر کن


dv.RowFilter = "LName Like '" + txtfam.Text.Trim() + "*'";


لازم به توضیح هستش که گرید ویو رو باید با استفاده از dv بایند کنی

FreeMagic
سه شنبه 17 بهمن 1391, 19:48 عصر
یه dataview از داده هی جدولت پر کن بعد با استفاده از کد زیر فیلتر کن


dv.RowFilter = "LName Like '" + txtfam.Text.Trim() + "*'";


لازم به توضیح هستش که گرید ویو رو باید با استفاده از dv بایند کنی

شرمنده توی سی شارپ خیلی مبتدی هستم:لبخند:
این dv چی هست؟

ordebehesht
سه شنبه 17 بهمن 1391, 20:01 عصر
نمونه ساخته شده از dataview هستش

ordebehesht
سه شنبه 17 بهمن 1391, 20:02 عصر
یه مثال برات میزارم

try
{
if (objcon.objConnection.State == ConnectionState.Open)
{ objcon.objConnection.Close(); }
else
{
objcon.objConnection.Open();
da = new SqlDataAdapter("Select
Name,Lname,Theraputic,Malady,N_Part,N_Room,N_Couch from H_Submit_Info",
this.objcon.objConnection);
da.Fill(ds, "H_Submit_Info");
dv = new DataView(ds.Tables["H_Submit_Info"]);
dgvServer.DataSource = dv;
objcon.objConnection.Close();
dgvServer.DataBindings.Clear();
}
}
catch (Exception msg)
{
MessageBox.Show(msg.Message, "Error");
}
}
private void txtPat_TextChanged(object sender, EventArgs e)
{
dv.RowFilter = "Name Like '" + txtPat.Text.Trim() + "*'";
}

khokhan
سه شنبه 17 بهمن 1391, 20:30 عصر
نمونه فیلتردیتا گرید

FreeMagic
سه شنبه 17 بهمن 1391, 21:17 عصر
اونوقت فیلتر بر اساس چند فیلد چه طور میشه؟
مثلا نام و نام خانوادگی و فرضا معدل یا نمره از بین 15 تا 17 ؟
همین جوری بینشون and بزاریم؟

khokhan
سه شنبه 17 بهمن 1391, 21:21 عصر
توی متد سویچ هرچند تا مورد بخوای می تونی تعریف کنی

البته اینجا به جای کمبو می تونی یه تکس باکس بگذاری و جستجو رو بین 2 پارامتر انجام بدی

یه کمی دقت کنی می سازی :لبخند:

ebrahimshekoohy
چهارشنبه 18 بهمن 1391, 09:45 صبح
ممنون ولی datagridview اصلا خاصیت RowFilter نداره
البته من دارم از VS2010 استفاده می کنم
حالا خودم تونستم یه کد بنویسم که جواب کارمو میده یه نگاه بهش بندازین که خوبه یا بد ممنون می شم
راستی از LINQ استفاده می کنم
dataGridView1.DataSource = context.T_Cars.Where(item => item.Model_Car.StartsWith(textBox1.Text));


یه dataview از داده هی جدولت پر کن بعد با استفاده از کد زیر فیلتر کن


dv.RowFilter = "LName Like '" + txtfam.Text.Trim() + "*'";


لازم به توضیح هستش که گرید ویو رو باید با استفاده از dv بایند کنی

m.mostafa
جمعه 20 بهمن 1391, 12:27 عصر
سلام یه مقدار در مورد خط های اول کد بیشتر توضیح میدین.ممنون