Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <CheckBox Content="CheckBox" Height="16" HorizontalAlignment="Left"
- Margin="176,132,0,0" Name="checkBox1" VerticalAlignment="Top"
- Command="{Binding YourCommand}" />
- <CheckBox IsChecked="{Binding ServiceOrderItemTask.IsCompleted, Mode=TwoWay}" Content="{Binding ServiceOption.Name}">
- <i:Interaction.Triggers>
- <i:EventTrigger EventName="Checked">
- <i:InvokeCommandAction Command="{Binding DataContext.IsCompletedCheckedCommand, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type t:RadGridView}}}" CommandParameter="{Binding}"/>
- </i:EventTrigger>
- <i:EventTrigger EventName="Unchecked">
- <i:InvokeCommandAction Command="{Binding DataContext.IsCompletedUncheckedCommand, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type t:RadGridView}}}" CommandParameter="{Binding}"/>
- </i:EventTrigger>
- </i:Interaction.Triggers>
- <CheckBox CommandParameter="{Binding}"
- Command="{Binding DataContext.AddRemovePresetAssignmentCommand,
- RelativeSource={RelativeSource FindAncestor,
- AncestorType={x:Type UserControl}}}"
- Content="{Binding Path=Name}">
- <CheckBox HorizontalAlignment="Right"
- VerticalAlignment="Top"
- Margin="2,0,3,0"
- Command="{Binding CommandPinPropertyGrid}"
- CommandParameter="{Binding IsChecked, RelativeSource={RelativeSource Self}}">
- <CheckBox.Template>
- <ControlTemplate TargetType="{x:Type CheckBox}">
- <Grid>
- <Image x:Name="ImagePushpin" Width="16" Height="16" Source="pack://application:,,,/WpfUtil;component/Images/PushpinUnpinned16x16.png" />
- </Grid>
- <ControlTemplate.Triggers>
- <Trigger Property="IsChecked" Value="True">
- <Setter TargetName="ImagePushpin" Property="Source" Value="pack://application:,,,/WpfUtil;component/Images/PushpinPinned16x16.png" />
- </Trigger>
- </ControlTemplate.Triggers>
- </ControlTemplate>
- </CheckBox.Template>
- </CheckBox>
- public MainWindowViewModel()
- {
- CommandPinPropertyGrid = new DelegateCommand<bool>(PinPropertyGrid);
- // ******************************************************************
- public DelegateCommand<bool> CommandPinPropertyGrid { get; private set; }
- public void PinPropertyGrid(bool pinned)
- {
- this.IsPropertyGridPinned = pinned;
- }
- using System;
- using System.Windows.Input;
- namespace HQ.Wpf.Util.Command
- {
- /// <summary>
- /// Represents a command that forwards the <c>Execute</c> and <c>CanExecute</c> calls to specified delegates.
- /// </summary>
- public class DelegateCommand<T> : ICommand
- {
- private readonly Action<T> _executeCallback;
- private readonly Predicate<T> _canExecuteCallback;
- /////////////////////////////////////////////////////////////////////////////////////////////////////
- // OBJECT
- /////////////////////////////////////////////////////////////////////////////////////////////////////
- /// <summary>
- /// Initializes a new instance of the <see cref="DelegateCommand<T>"/> class.
- /// </summary>
- /// <param name="executeCallback">The execute callback delegate.</param>
- public DelegateCommand(Action<T> executeCallback)
- : this(executeCallback, null)
- {
- // No-op
- }
- /// <summary>
- /// Initializes a new instance of the <see cref="DelegateCommand<T>"/> class.
- /// </summary>
- /// <param name="executeCallback">The execute callback delegate.</param>
- /// <param name="canExecuteCallback">The can execute callback delegate.</param>
- public DelegateCommand(Action<T> executeCallback, Predicate<T> canExecuteCallback)
- {
- if (executeCallback == null)
- throw new ArgumentNullException("executeCallback");
- this._executeCallback = executeCallback;
- this._canExecuteCallback = canExecuteCallback;
- }
- /////////////////////////////////////////////////////////////////////////////////////////////////////
- // INTERFACE IMPLEMENTATION
- /////////////////////////////////////////////////////////////////////////////////////////////////////
- #region ICommand Members
- /// <summary>
- /// Defines the method that determines whether the command can execute in its current state.
- /// </summary>
- /// <param name="parameter">Data used by the command. If the command does not require data to be passed, this object can be set to <see langword="null"/>.</param>
- /// <returns>
- /// <c>true</c> if this command can be executed; otherwise, <c>false</c>.
- /// </returns>
- public bool CanExecute(object parameter)
- {
- return (this._canExecuteCallback == null) ? true : this._canExecuteCallback((T)parameter);
- }
- /// <summary>
- /// Occurs when changes occur that affect whether or not the command should execute.
- /// </summary>
- public event EventHandler CanExecuteChanged
- {
- add
- {
- if (this._canExecuteCallback != null)
- CommandManager.RequerySuggested += value;
- }
- remove
- {
- if (this._canExecuteCallback != null)
- CommandManager.RequerySuggested -= value;
- }
- }
- /// <summary>
- /// Defines the method to be called when the command is invoked.
- /// </summary>
- /// <param name="parameter">Data used by the command. If the command does not require data to be passed, this object can be set to <see langword="null"/>.</param>
- public void Execute(object parameter)
- {
- this._executeCallback((T)parameter);
- }
- #endregion // ICommand Members
- }
- }
- CheckBox box = e.OriginalSource as CheckBox;
- if(box.IsChecked.Value)
- DoThis();
- else
- DoAnotherMethod();
Add Comment
Please, Sign In to add comment