دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱۹
  • اسفند

جلسه ۰۶ : بررسی خواص وابسته در WPF

  • دسته‌بندی‌ها :
جلسه ۰۶ : بررسی خواص وابسته در WPF
    • جزئیات
    • نوع محتواآموزشی

      دوستان و علاقمندان به مباحث WPF وقتتون بخیر. با آموزش WPF از وب سایت آموزشی پی وی لرن همراهتون هستیم. بررسی خواص وابسته در WPF یا Dependency Properties را در این بخش دنبال خواهیم نمود.

      بررسی خواص وابسته در WPF

      در برنامه های WPF ، خاصیت وابستگی نوع خاصی از خاصیت است که خاصیت CLR را گسترش می دهد. از مزایای عملکردهای خاص موجود در سیستم خاصیت WPF بهره می برد.

      کلاسی که خاصیت وابستگی را تعریف می کند باید از کلاس DependencyObject به ارث برده شود. بسیاری از کلاس های کنترل UI که در XAML استفاده می شوند از کلاس DependencyObject گرفته شده اند و از خواص وابستگی پشتیبانی می کنند ، به عنوان مثال. کلاس Button از ویژگی وابستگی IsMouseOver پشتیبانی می کند.

      کد XAML زیر یک دکمه با برخی خصوصیات ایجاد می کند.

      مثال : 

      بسط نشانه گذاری x: Type در XAML دارای عملکردی مشابه مانند()typof در #C است. هنگامی که ویژگی ها مشخص می شوند ، نوع شیء مانند <“{Style TargetType = “{x:Type Button}> استفاده می شود ، استفاده می شود.

      وقتی کد بالا کامپایل و اجرا شد ، MainWindow زیر را دریافت می کنید. هنگامی که ماوس بر روی دکمه است ، رنگ پیش زمینه دکمه را تغییر می دهد. وقتی ماوس را از روی دکمه را برمی داریم، دوباره به رنگ اصلی خود تغییر می کند.

       

      بررسی خواص وابسته در WPF

      بررسی خواص وابسته در WPF

      چرا ما به خصوصیات وابستگی احتیاج داریم؟

      خاصیت وابستگی در هنگام استفاده از آن در برنامه ، مزایایی را به شما می دهد. خاصیت وابستگی می تواند روی ویژگی CLR در سناریوهای زیر استفاده شود.

      • اگر می خواهید استایل را تنظیم کنید.
      • اگر می خواهید اتصال داده (data binding) باشد.
      • اگر می خواهید با یک منبع تنظیم کنید (یک منبع ثابت یا یک منبع پویا)
      • اگر می خواهید از انیمیشن پشتیبانی کنید

      در اصل ، ویژگی های وابستگی عملکردهای زیادی را ارائه می دهد که شما با استفاده از یک ویژگی CLR به دست نمی آورید.

      تفاوت اصلی بین خواص وابستگی و سایر خواص CLR در زیر ذکر شده است.

      • خواص CLR می توانند با استفاده از گیرنده و تنظیم کننده مستقیماً از عضو خصوصی یک کلاس بخوانند و بنویسند. در مقابل ، خصوصیات وابستگی در شی محلی ذخیره نمی شوند.
      • خواص وابستگی در دیکشنری key/value ذخیره می شود که توسط کلاس DependencyObject تهیه شده است. همچنین حافظه زیادی را ذخیره می کند زیرا در هنگام تغییر ، خاصیت را ذخیره می کند. می تواند در XAML نیز محدود شود.

      خواص وابستگی سفارشی

      در چارچوب NET. نیز می توان خصوصیات وابستگی سفارشی را تعریف کرد. مراحل زیر را برای تعریف خواص وابستگی سفارشی در #C دنبال کنید.

      • خاصیت وابستگی خود را با استفاده از ثبت تماس در سیستم اعلام و ثبت کنید.
      • تنظیم کننده و گیرنده خواص را تهیه کنید.
      • یک هندلر ایستا را تعریف کنید که با تغییراتی که در سطح جهانی رخ می دهد ، کنترل خواهد شد.
      • یک هندلر نمونه را تعریف کنید که هر گونه تغییر و تحول در آن نمونه خاص را بر عهده خواهد داشت.

      کد #C زیر یک خاصیت وابستگی را برای تنظیم ویژگی SetText کنترل کاربر تعیین می کند.

      مثال : 

      در این جا فایل XAML است که در آن TextBlock به عنوان یک کاربر کنترل شده تعریف شده است و خاصیت وابستگی SetText به آن متن اختصاص داده می شود.

      کد XAML زیر یک کنترل کاربر ایجاد می کند و خاصیت وابستگی آن به SetText را آغاز می کند.

      مثال : 

      بیایید این برنامه را اجرا کنیم. بلافاصله می توانید مشاهده کنید که در MainWindow، خاصیت وابستگی برای کنترل کاربر با موفقیت به عنوان یک متن استفاده شده است.

       

      بررسی خواص وابسته در WPF

      بررسی خواص وابسته در WPF

      کلام پایانی

      بررسی خواص وابسته در WPF یا Dependency Properties را در این بخش از آموزش WPF دنبال نمودیم. در جلسه ی آینده مبحث routed event را بیان خواهیم نمود.

      QR:  جلسه ۰۶ : بررسی خواص وابسته در WPF
      به اشتراک بگذارید