نمایش نتایج 1 تا 12 از 12

نام تاپیک: فیلتر datagridview

  1. #1
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1391
    محل زندگی
    tehran
    پست
    243

    Lightbulb فیلتر datagridview

    با سلام خدمت همه مهندسین عزیز
    من یه کد برای فیلتر دیتا گرید ویو ام نوشته ام 2 تا مشکل هست
    1- کلا کد یک بار اجرا میشه و برای بار دوم ارور میده
    2- همون یه بار هم که اجرا میشه هیچ اتفاقی نمیافته یعنی فیلتر انجام نمیشه....
    کد و ارور رو امیگذارم امیدوارم که بتونید راهنمایی ام کنید:

    ارور به شرح زیر است:

    An unhandled exception of type 'System.InvalidCastException' occurred in test.exe


    Additional information: Unable to cast object of type 'System.Data.DataView' to type 'System.Data.DataTable'.

    کدی هم که نوشته ام این میباشد:

    DataTable dt = (DataTable)dataGridView3.DataSource;
    DataView afltr = new DataView(dt);
    afltr.RowFilter = string.Format("id LIKE '%{0}%'", Convert.ToInt32(textBox2.Text));
    dataGridView3.DataSource = afltr;



    کلی از صبح دارم میگردم اما هنوز به هیچ نتیجه ای نرسیدم...
    ممنون میشم اگر کمک یا راهنمایی ای به بنده کنید...
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 03 تیر 1394 در 20:34 عصر

  2. #2
    کاربر دائمی آواتار alireza264
    تاریخ عضویت
    تیر 1390
    محل زندگی
    تهران
    پست
    261

    نقل قول: فیلتر دیتاگرید ویو

    سلام
    این سوال قبلا چند بار مطرح شده
    1- قبل از فیلتر مجدد باید فیلتر قبلی برداشته بشه
    2- datable رو فیلتر کن و بریز توی دیتا گرید
    3- استفاده از ICollectionView که بهترین روشه

  3. #3
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1391
    محل زندگی
    tehran
    پست
    243

    نقل قول: فیلتر دیتاگرید ویو

    نقل قول نوشته شده توسط alireza264 مشاهده تاپیک
    سلام
    این سوال قبلا چند بار مطرح شده
    1- قبل از فیلتر مجدد باید فیلتر قبلی برداشته بشه
    2- datable رو فیلتر کن و بریز توی دیتا گرید
    3- استفاده از ICollectionView که بهترین روشه
    مرسی از راهنمایی تون آقا علی رضا... من کل تاپیک های قبلی که مرتبت بود رو خوندم هیچ کس مشکلش مثل من نبود.. تا همینجای کد رو هم با کمک همون تاپیک ها نوشتم...

    1- چطور باید این کار رو انجام بدم؟
    2-من هر چی سرچ کردم همه دیتا ویو رو فیلتر میکردن کدی برای فیلتر دیتا تیبل نبود... خودمم فکر میکنم که باید اینطور که شما میگید بنویسم اما خوب نمیدونم چطور
    3- این که میگید رو نمیدونم چیه اما الان تحقیق میکنم و خبرش رو میدم...

    بازم ممنون

  4. #4
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1391
    محل زندگی
    tehran
    پست
    243

    نقل قول: فیلتر دیتاگرید ویو

    نقل قول نوشته شده توسط alireza264 مشاهده تاپیک
    سلام
    این سوال قبلا چند بار مطرح شده
    1- قبل از فیلتر مجدد باید فیلتر قبلی برداشته بشه
    2- datable رو فیلتر کن و بریز توی دیتا گرید
    3- استفاده از ICollectionView که بهترین روشه
    آقا من درباره گزینه آخر هیچی پیدا نکردم میشه یه کم توضیحات و یه سمپل کد برام لطف کنید و بگذارید

  5. #5
    کاربر دائمی آواتار alireza264
    تاریخ عضویت
    تیر 1390
    محل زندگی
    تهران
    پست
    261

    نقل قول: فیلتر دیتاگرید ویو

    نقل قول نوشته شده توسط mahlake مشاهده تاپیک
    آقا من درباره گزینه آخر هیچی پیدا نکردم میشه یه کم توضیحات و یه سمپل کد برام لطف کنید و بگذارید
    اول یک کلاس ایجاد کن که حاوی فیلد های مورد نظر باشه

    public class Person
    {
    public string Cod_key { get; set; }
    public string Fname { get; set; }
    public string LName { get; set; }
    public string Father { get; set; }
    public string LocatLiving { get; set; }
    }

    یک لیست از روی کلاس بساز
    List<Person> listperson = new List<Person>();


    listperson رو با دیتاگرید بایند کن و با اطلاعات پرش کن

    وبعد با استفاده از ICollectionView باید listperson رو فیلتر کنی
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 03 تیر 1394 در 20:34 عصر

  6. #6
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1391
    محل زندگی
    tehran
    پست
    243

    نقل قول: فیلتر دیتاگرید ویو

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

    public class Person
    {
    public string Cod_key { get; set; }
    public string Fname { get; set; }
    public string LName { get; set; }
    public string Father { get; set; }
    public string LocatLiving { get; set; }
    }

    یک لیست از روی کلاس بساز
    List<Person> listperson = new List<Person>();


    listperson رو با دیتاگرید بایند کن و با اطلاعات پرش کن

    وبعد با استفاده از ICollectionView باید listperson رو فیلتر کنی
    آقا علیرضا تو رو خدا یه کم بیشتر توضیح بدید من هیچی تا به حال از این چیزایی که میگید رو ندیدم و نشنیدم...
    از صبح دارم میگردم رفرنساش رو پیدا کردم و نیم اسپیساش رو هم اضافه کردم..

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


    private void button17_Click(object sender, EventArgs e)
    {
    List<Person> listperson = dataGridView3.DataSource as List<Person>;
    ICollectionView view = CollectionViewSource.GetDefaultView(listperson);
    if (string.IsNullOrEmpty(textBox2.Text))
    view.Filter = null;
    else
    view.Filter = new Predicate<object>((o) => ((Person)o).id.StartsWith(textBox2.Text));

    }
    public class Person
    {
    public string id { get; set; }
    public string tvd { get; set; }
    public string shm { get; set; }
    public string shsh { get; set; }
    public string plk { get; set; }
    public string clr { get; set; }
    public string cpn { get; set; }
    public string mob { get; set; }
    public string shb { get; set; }
    public string shs { get; set; }
    public string dtv { get; set; }
    public string pnb { get; set; }
    public string odt { get; set; }
    public string dcb { get; set; }
    public string cname { get; set; }
    public string mnc { get; set; }
    public string tnc { get; set; }
    public string gng { get; set; }
    public string rname { get; set; }
    public string frn { get; set; }
    public string rsh { get; set; }
    public string rcn { get; set; }
    public string ptlc { get; set; }
    public string add { get; set; }
    public string rtn { get; set; }
    public string gpn { get; set; }
    public string dcs { get; set; }
    public string dgd { get; set; }
    public string dct { get; set; }
    public string emza { get; set; }
    }

  7. #7
    کاربر دائمی آواتار alireza264
    تاریخ عضویت
    تیر 1390
    محل زندگی
    تهران
    پست
    261

    نقل قول: فیلتر دیتاگرید ویو

    سلام
    روش فیلتر


    ICollectionView collectionView = CollectionViewSource.GetDefaultView(listperson);

    if (String.IsNullOrEmpty(textBox2.Text))
    collectionView.Filter = null;

    else
    {
    collectionView.Filter = o =>
    {
    Person item = (Person)o;

    bool result = item.Fname.Contains(textBox2.Text, StringComparison.OrdinalIgnoreCase) ;
    }
    }

  8. #8
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1391
    محل زندگی
    tehran
    پست
    243

    نقل قول: فیلتر دیتاگرید ویو

    نقل قول نوشته شده توسط alireza264 مشاهده تاپیک
    سلام
    روش فیلتر


    ICollectionView collectionView = CollectionViewSource.GetDefaultView(listperson);

    if (String.IsNullOrEmpty(textBox2.Text))
    collectionView.Filter = null;

    else
    {
    collectionView.Filter = o =>
    {
    Person item = (Person)o;

    bool result = item.Fname.Contains(textBox2.Text, StringComparison.OrdinalIgnoreCase) ;
    }
    }
    علیرضا جان کدی که کمک کردی ارور میده...
    Capture.JPG

  9. #9
    کاربر دائمی آواتار alireza264
    تاریخ عضویت
    تیر 1390
    محل زندگی
    تهران
    پست
    261

    نقل قول: فیلتر datagridview

    سلام تعریف لیست listperson رو درست استفاده کن

    List<Person> listperson = new List<Person>();




    یه سزی هم به این آدرس ها بزن شاید کمک که
    https://documentation.devexpress.com...mDocument11044

    http://grantwinney.com/using-a-textb...stview-in-wpf/

    http://stackoverflow.com/questions/2...x-with-a-delay
    آخرین ویرایش به وسیله alireza264 : جمعه 05 تیر 1394 در 11:47 صبح

  10. #10
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1391
    محل زندگی
    tehran
    پست
    243

    نقل قول: فیلتر datagridview

    نقل قول نوشته شده توسط alireza264 مشاهده تاپیک
    سلام تعریف لیست listperson رو درست استفاده کن

    List<Person> listperson = new List<Person>();




    یه سزی هم به این آدرس ها بزن شاید کمک که
    https://documentation.devexpress.com...mDocument11044

    http://grantwinney.com/using-a-textb...stview-in-wpf/

    http://stackoverflow.com/questions/2...x-with-a-delay
    وای خدای من تا به حال انقدر احساس خنگ بودن بهم دست نداده بود... داداش من انگلیسیم خیلی ضعیفه... من خیلی گشتم... نمیشه به خدا....
    تو رو خدا یه پروژه سمپل بزارید یا اگه میبینید ک نمیشه پروژه سنپل بگزارید لطفا بگید من یه سمپل بزارم شما کد رو اصلاحش کنید لطفاااا....

  11. #11
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1391
    محل زندگی
    tehran
    پست
    243

    نقل قول: فیلتر datagridview

    من یه کد گیر اوردم که کاری رو میکنه که من میخوام اما wpf هست اما من دارم ویندوز فرم کار میکنم... کمک کنید لطفا...
    https://onedrive.live.com/?id=96F8D4...%21133&o=OneUp

  12. #12
    کاربر دائمی آواتار alireza264
    تاریخ عضویت
    تیر 1390
    محل زندگی
    تهران
    پست
    261

    نقل قول: فیلتر datagridview

    سلام
    این تکه رو اینجوری اصلاح کن ببین مشکل حل میشه یا نه ضمن اینکه listperson هم باید توش رکورد باشه

    ICollectionView collectionView = CollectionViewSource.GetDefaultView(listperson);

    if (String.IsNullOrEmpty(textBox2.Text))
    collectionView.Filter = null;

    else
    {
    collectionView.Filter = o =>
    {
    Person item = (Person)o;

    item.Fname.Contains(textBox2.Text, StringComparison.OrdinalIgnoreCase) ;
    }
    }



    و اینم مثال بدون ICollectionView
    http://www.codeproject.com/Tips/4312...tered-in-TextB

تاپیک های مشابه

  1. سوال: چطور میشه اطلاعات datagridview v رو فیلتر کرد
    نوشته شده توسط morrning در بخش VB.NET
    پاسخ: 5
    آخرین پست: پنج شنبه 26 فروردین 1389, 18:31 عصر
  2. فیلتر کردن در dataGridView
    نوشته شده توسط mustafa13 در بخش C#‎‎
    پاسخ: 1
    آخرین پست: پنج شنبه 21 آبان 1388, 12:57 عصر
  3. فیلتر کردن DataGridView که Bind نشده
    نوشته شده توسط AmirAlimadadi در بخش C#‎‎
    پاسخ: 11
    آخرین پست: پنج شنبه 23 مهر 1388, 16:15 عصر
  4. سوال: فیلتر کردن در DataGridView
    نوشته شده توسط kh1387 در بخش C#‎‎
    پاسخ: 3
    آخرین پست: چهارشنبه 17 مهر 1387, 13:40 عصر
  5. binad کردن Datatable فیلتر شده به Datagridview
    نوشته شده توسط azamkaboutari در بخش VB.NET
    پاسخ: 12
    آخرین پست: یک شنبه 15 مهر 1386, 15:20 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •