| 1234567891011121314151617181920212223242526272829303132333435363738 | using System.Windows;namespace OpenSEMI.ClientBase.Command{	public sealed class EventCommandTrigger : CommandTrigger	{		public static readonly DependencyProperty RoutedEventProperty = DependencyProperty.Register("RoutedEvent", typeof(RoutedEvent), typeof(EventCommandTrigger), new FrameworkPropertyMetadata(null));		public RoutedEvent RoutedEvent		{			get			{				return (RoutedEvent)GetValue(RoutedEventProperty);			}			set			{				SetValue(RoutedEventProperty, value);			}		}		protected override Freezable CreateInstanceCore()		{			return new EventCommandTrigger();		}		protected override void InitializeCore(FrameworkElement source)		{			source.AddHandler(RoutedEvent, new RoutedEventHandler(ExecuteCommand));		}		private void ExecuteCommand(object sender, RoutedEventArgs args)		{			CommandParameter<object> parameter = new EventCommandParameter<object, RoutedEventArgs>(base.CustomParameter, RoutedEvent, args);			ExecuteCommand(parameter);		}	}}
 |