private static void CanExecuteRemove(object target, CanExecuteRoutedEventArgs e) { bool result = false; CslaDataProviderCommandManager ctl = target as CslaDataProviderCommandManager; if (ctl != null && ctl.Provider != null) { if (ctl.Provider.Data != null) { Csla.Core.BusinessBase bb = e.Parameter as Csla.Core.BusinessBase; IBindingList list; if (bb != null) { list = bb.Parent as IBindingList; } else { list = ctl.Provider.Data as IBindingList; } if (list != null) { result = list.AllowRemove; if (result && !Csla.Rules.BusinessRules.HasPermission(Rules.AuthorizationActions.EditObject, ctl.Provider.Data)) { result = false; } } } } e.CanExecute = result; }
private static void CanExecuteUndo(object target, CanExecuteRoutedEventArgs e) { bool result = false; CslaDataProviderCommandManager ctl = target as CslaDataProviderCommandManager; if (ctl != null && ctl.Provider != null) { if (ctl.Provider.Data != null) { Csla.Core.IEditableBusinessObject ibiz = ctl.Provider.Data as Csla.Core.IEditableBusinessObject; if (ibiz != null) { result = ibiz.IsDirty; } else { Csla.Core.IEditableCollection icol = ctl.Provider.Data as Csla.Core.IEditableCollection; if (icol != null) { result = icol.IsDirty; } } } } e.CanExecute = result; }
/// <summary> /// Creates an instance of the object. /// </summary> public CslaDataProvider() { _commandManager = new CslaDataProviderCommandManager(this); _factoryParameters = new ObservableCollection <object>(); _factoryParameters.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(_factoryParameters_CollectionChanged); }
/// <summary> /// Creates an instance of the object. /// </summary> public CslaDataProvider() { _commandManager = new CslaDataProviderCommandManager(this); _factoryParameters = new ObservableCollection<object>(); _factoryParameters.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(_factoryParameters_CollectionChanged); }
private static void SaveCommand(object target, ExecutedRoutedEventArgs e) { CslaDataProviderCommandManager ctl = target as CslaDataProviderCommandManager; if (ctl != null && ctl.Provider != null) { ctl.Provider.Save(); } }
private static void RemoveCommand(object target, ExecutedRoutedEventArgs e) { CslaDataProviderCommandManager ctl = target as CslaDataProviderCommandManager; if (ctl != null && ctl.Provider != null) { ctl.Provider.RemoveItem(null, new ExecuteEventArgs { MethodParameter = e.Parameter }); } }
private static void CanExecuteNew(object target, CanExecuteRoutedEventArgs e) { bool result = false; CslaDataProviderCommandManager ctl = target as CslaDataProviderCommandManager; if (ctl != null && ctl.Provider != null) { if (ctl.Provider.Data != null) { IBindingList list = ctl.Provider.Data as IBindingList; if (list != null) { result = list.AllowNew; if (result && !Csla.Rules.BusinessRules.HasPermission(Rules.AuthorizationActions.EditObject, ctl.Provider.Data)) { result = false; } } } } e.CanExecute = result; }