Есть ли какой-нибудь способ наследовать от класса triggerAction?
-
19-09-2019 - |
Вопрос
Меня не интересуют анимации, и я пытаюсь сделать так, чтобы простое действие setter устанавливалось без ключевых кадров.
Я хотел унаследовать triggerAction;создайте свойства, которые устанавливают новое значение для target, любые дополнительные необязательные свойства, чтобы я мог использовать:
<EventTrigger SourceName="btn" RoutedEvent="Click">
<BooleanActionTrigger TargetName="cb" Property="IsChecked" Value="False"/>
</EventTrigger>
Решение
Если Expression Blend установлено, существует библиотека DLL System.Windows.Interactivity.dll
в
C:\Program Файлы (x86)\Microsoft SDKs\Expression\Blend 3\Интерактивность\Библиотеки\WPF\ Система.Windows.Interactivity.dll.
Тогда это возможно для наследования
System.Windows.Interactivity.TriggerAction<T> where T : DependencyObject
System.Windows.Interactivity.TriggerBase<T> where T : DependencyObject
System.Windows.Interactivity.Behavior<T> where T : DependencyObject
Другие советы
Вам не обязательно устанавливать Expression Blend. System.Windows.Interactivity для WPF теперь доступен на NuGet.Просто добавьте этот пакет NuGet в свой проект и напишите свой собственный TriggerAction
:
using System.Windows;
using System.Windows.Interactivity;
public class MyCustomAction : TriggerAction<DependencyObject>
{
...
}