PDA

View Full Version : datagridview با گزینه جستجو در قسمت بالای هر ستون دیتا گرید ویو



jmfnima
چهارشنبه 22 مرداد 1393, 21:30 عصر
یا سلام به همه دوستان
من دنیال یک دیتاگرید ویو میگردم که در بالای هر ستون یک گزینه جستجو داشته باشد .
اگه از دوستان کسی میتونه بهم کمک کنه ممنون میشم .

alonmahdi
پنج شنبه 23 مرداد 1393, 01:39 صبح
سلام
من طبق سوال شما این راه حل بنظرم اومد و اونم این که خودتون یک کامپوننت بسازید :
مد نظر من اینه که شما یک panel بگذارید و یک گرید ویود داخل اون بگذارید بعدش با پرو پرتی هایی که بعدا براش ست می کنید بیاد و براساس تعداد ستون های گرید ویود تکس باکس بالای هر ستون از گریدویو بسازه و به اون پنله اضافه کنه :( پروپرتی ها یکیش کارش همین می تونه باشه که پهنای هر تکس باکس و نقطه شروع فاصله اون ار سمت چپ باشه برای تنظیم کردن و ...).
خب بعدش باید وقتی که گرید ویو بایند شد بر اساس تعداد ستون هایی که به گریدویو وارد شده بیاد و تکس باکس بسازه :

for (int i = 0; i < dataGridView1.Columns.Count;i++ )
{
TextBox t = new TextBox();
t.Name = "txt" + i;
t.Left = left;
t.Width = 100;
t.Top = 20;
t.Tag = i;
t.TextChanged+=new EventHandler(t_TextChange);
panel1.Controls.Add(t);
left += 100;
}

من این مثال رو این طوری حل کردم که وقتی فرم لود میشه کار بالا رو انجام می ده و بعد برای رویداد هم کد زیر نوشتم :

TextBox t = (TextBox)sender;


string searchValue = t.Text;

dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
try
{
foreach (DataGridViewRow row in dataGridView1.Rows)
{
if (row.Cells[int.Parse(t.Tag.ToString())].Value.ToString().Equals(searchValue))
{
row.Selected = true;
break;
}
}
}
catch
{

}


بهتره یک بار این کار رو توی یک برنامه ساده انجام بدین بعدا با ور رفتن یک کامپوننت ازش درست کنید .

برای تست اول گریدیو رو به یک بانک bind کنید.
تیکه کد اول رو داخل formload بنویسید و بعدش تیکه کد دوم رو در زیر فرم load بنویسید .

می بخشید وقت نداشتم بیشتر از این روش کار کنم .
ولی فکر کنم یک جورایی سر نخ رو بهت داده باشم که باید چیکار بکنی .

hamid_hr
پنج شنبه 23 مرداد 1393, 09:34 صبح
اینو ببین
http://barnamenevis.org/showthread.php?64210-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-%DA%A9%D9%88%DA%86%DA%A9-%D9%88-%D9%85%D9%81%D9%8A%D8%AF-%D8%AF%D8%B1-%D8%B3%D9%8A-%D8%B4%D8%A7%D8%B1%D9%BE&p=1886246&viewfull=1#post1886246

alibilgats
پنج شنبه 23 مرداد 1393, 12:25 عصر
از GridEX جانوس استفاده کن دوست من!
واقعا توی این زمینه محشره. بدون نوشتن یک خط کد جستجوی فوق العاده ای در اختیارت میذاره با کلی امکانات دیگه.
برای هر ستون بصورت جدا با تنظیمات مختلف.

jmfnima
شنبه 25 مرداد 1393, 00:25 صبح
با سلام و تشکر از شما
ولی هر کاری میکنم نمیتونم از سایتی گذاشتی دانلودش کنم

jmfnima
جمعه 15 اسفند 1393, 14:08 عصر
با سلام و تشکر از شما دوست عزیز
من جانوس رو دانلود کردم ولی روش کار باهاش چطوریه میشه یک فایل نمونه برام بفرستین.ممنون