تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 6 از 6

نام تاپيک: update : WPF نشدن datagrid بهنگام تغییر پراپرتی بایند شده

  1. #1
    در آغاز فعالیت
    تاريخ عضويت
    Nov 2008
    پست ها
    11

    14 update : WPF نشدن datagrid بهنگام تغییر پراپرتی بایند شده

    سلام.
    من دیتاگریدم رو به یک پراپرتی که در CodeBehind همان Window تعریف شده بایند کرده ام .
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    در CodeBehind :


    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    و در Constructor :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ولی زمانی که به پراپرتی Lst_Servers آیتمی اضافه می کنم ، دیتاگریدم آپدیت نمی شود !
    یه جا سرچ کردم گفته بود خود کلاسی که ازش پراپرتی ساختی (در مثال من کلاس Server ) رو هم باید از اینترفیس INotifyPropertyChanged به ارث ببری ، ولی اون کار رو هم کردم نشد !!!
    راهنمایی لطفا ..

  2. #2
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    بسم الله الرحمن الرحیم.
    سلام دوست عزیز خسته نباشید.
    شما نمیتونید یک لیست معمولی رو به دیتاگرید بایند کنید و تغییرات رو در دیتاگرید مشاده کنید باید بجای استفاده از List از کلاس ObservableCollection استفاده کنید.چون لیست هایی که بایند میشن از یک Notify Change مخصوص لیست پیروی میکنند.
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
    موفق و سربلند باشید در پناه حق.

  3. این کاربر از عــــلی بخاطر این مطلب مفید تشکر کرده است


  4. #3
    در آغاز فعالیت
    تاريخ عضويت
    Nov 2008
    پست ها
    11

    پيش فرض

    سلام .من نوع لیستم رو به ObservableCollection تغییر دادم ولی باز لیست تغییر می کنه ولی دیتاگرید نه !!
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  5. این کاربر از AftaB66 بخاطر این مطلب مفید تشکر کرده است


  6. #4
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    بسم الله الرحمن الرحیم.
    سلام.
    مشکل شما در بایند کردن کدوم یک از این دوتاست:
    1.ساخت لیست جدید و انتساب دادن به دیتاگرید
    2.درج یک آیتم در لیست

    در کدوم یک از این گزینه ها مشکل بایند دارید؟
    اگر DataContext فرم یا دیتاگرید رو رو مقدار لیست دادید کد xaml زیر رو از :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    به:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    تغییر بدید.

  7. این کاربر از عــــلی بخاطر این مطلب مفید تشکر کرده است


  8. #5
    در آغاز فعالیت
    تاريخ عضويت
    Nov 2008
    پست ها
    11

    پيش فرض

    بسم الله الرحمن الرحیم.
    سلام.
    مشکل شما در بایند کردن کدوم یک از این دوتاست:
    1.ساخت لیست جدید و انتساب دادن به دیتاگرید
    2.درج یک آیتم در لیست

    در کدوم یک از این گزینه ها مشکل بایند دارید؟
    من می خوام هر تغییری که در لیست موردنظرم در CodeBehindدادم( که به عنوان پراپرتی قرار دادم ) در دیتاگریدم اعمال بشه . فکر می کنم به مورد دومی که شما گفتید بخوره ، در واقع می خوام در CodeBehind مستقیم Content دیتاگریدم رو تغییر ندم و با اینکار یه جورایی از امکانات Wpf استفاده کنم . حالا نمی دونم تا چه اندازه این روشم درسته!
    اگر DataContext فرم یا دیتاگرید رو رو مقدار لیست دادید کد xaml زیر رو از :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    به:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    تغییر بدید.
    ItemsSource دیتاگریدم رو برابر لیستم قرار دادم با :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    درست شد. ممنون
    ولی نمی شد بدون اینکه لیستم رو به دیتاگرید در CodeBehind نسبت بدم و فقط با نسبت دادن در xaml درست بشه ؟؟

  9. این کاربر از AftaB66 بخاطر این مطلب مفید تشکر کرده است


  10. #6
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    بسم الله الرحمن الرحیم.
    سلام.
    ولی نمی شد بدون اینکه لیستم رو به دیتاگرید در CodeBehind نسبت بدم و فقط با نسبت دادن در xaml درست بشه ؟؟
    بله میشه.
    برای اینکار بهتره به روش MVVM کد نویسی کنید که با یک جستجو نمونه های زیادی توی اینترنت می بینید.
    مثلاً اگر نام کنترل شما بشه UserControl1.xaml سپس کلاسی که قرار ViewModel کنترل شما بشه اسمش میشه UserControl1ViewModel.cs سپس این کلاس رو به صورت مستقیم با کد xaml توی کنترل مورد نظرتون new میکنید و بایند های خودتون رو از جمله لیست و .... بدون نوشتن یک خط کد در cs کنترل میتونید مدیریت کنید.

  11. این کاربر از عــــلی بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •