آموزش WPF

مباحث پایه WPF

مثال های کاربردی WPF

محرک ها (Triggers) در WPF – آموزش WPF

  • دوشنبه ۲۵ مرداد ۱۴۰۰
  • بازدید ۸۴ نفر

wpf triggers 10687 تصویر

محرک ها (Triggers) در WPF

به طور کلی محرک ها در WPF این قابلیت را به ما می دهند تا بتوانیم بر اساس مقدار یک یا چند خاصیت اعمالی را انجام دهیم. برای مثال وقتی مقدار خاصتی IsEnabled برابر با True شود، میزان شفافیت کنترل را کم میکنیم. این قابلیت کمک می کند تا به صورت پویا ظاهر و یا رفتار کنترل را تغییر دهیم بدون اینکه نیاز به ایجاد مورد جدیدی باشد. در WPF سه نوع محرک وجود دارد:

  • محرک های مبتی بر خاصیت (Property Triggers)
  • محرک های مبتی بر داده (Data Triggers)
  • محرک های مبتنی بر رویداد (Event Triggers)

محرک های مبتی بر خاصیت (Property Triggers)

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

زمانی که مثال فوق را کامپایل و اجرا کنید، خروجی زیر را تولید خواهد کرد:

wpf triggers 10687 1 تصویر

اگر ماوس را بر روی دکمه ببرید رنگ متن آن به سبز تغییر خواهد کرد:

wpf triggers 10687 2 تصویر

محرک های مبتنی بر داده (Data Triggers)

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

زمانی که مثال فوق کامپایل و اجرا شود، خروجی زیر را تولید خواهد کرد:

wpf triggers 10687 3 تصویر

حال اگر بر تیک CheckBox را بزنید، رنگ متن و اشاره گر ماوس مربوط به TextBlock تغییر خواهد کرد:

wpf triggers 10687 4 تصویر

محرک های مبتنی بر رویداد (Event Triggers)

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

خروجی بعد از کامپایل:

wpf triggers 10687 5 تصویر

وقتی که بر روی دکمه کلیک کنید، اندازه آن مانند نمونه زیر تغییر خواهد کرد:

wpf triggers 10687 6 تصویر

ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است