ViewModelBase

Ecng.ComponentModel

Base class for implementing View-Model in MVVM pattern.

継承元: Disposable

実装: INotifyPropertyChanged

メソッド

CreateCommand
protected DelegateCommand CreateCommand(Action execute, Func<object, bool> canExecute)
result = viewModelBase.CreateCommand(execute, canExecute)

Creates and registers a command without parameter.

execute
The execution logic.
canExecute
The execution status logic.

戻り値: The created command.

CreateCommand``1
protected DelegateCommand<T> CreateCommand<T>(Action<T> execute, Func<T, bool> canExecute)
result = viewModelBase.CreateCommand(execute, canExecute)

Creates and registers a command with parameter.

execute
The execution logic.
canExecute
The execution status logic.

戻り値: The created command.

DisposeManaged
protected override void DisposeManaged()
viewModelBase.DisposeManaged()

Disposes the managed resources. Override this method to add custom clean up of managed resources.

GetValue``1
protected T GetValue<T>(string name)
result = viewModelBase.GetValue(name)

Gets property value from internal storage.

name
Property name (auto-filled by compiler).

戻り値: Property value or default if not set.

OnPropertyChanged
protected virtual void OnPropertyChanged(string name)
viewModelBase.OnPropertyChanged(name)

Raises the PropertyChanged event.

name
Property name.
OnPropertyChanged``1
protected void OnPropertyChanged<T>(Expression<Func<T>> selectorExpression)
viewModelBase.OnPropertyChanged(selectorExpression)

Raises the PropertyChanged event using expression.

selectorExpression
Property selector expression.
PropertyName``1
public static string PropertyName<T>(Expression<Func<T>> property)
result = ViewModelBase.PropertyName(property)

Gets property name from expression.

property
Property expression.

戻り値: Property name.

RegisterCommand``1
protected TCommand RegisterCommand<TCommand>(TCommand command)
result = viewModelBase.RegisterCommand(command)

Registers a command to be disposed when this ViewModel is disposed.

command
The command to register.

戻り値: The registered command for method chaining.

SetField``1
protected bool SetField<T>(T field, T value, Expression<Func<T>> selectorExpression)
result = viewModelBase.SetField(field, value, selectorExpression)

Sets field value and raises PropertyChanged if value changed.

field
Field reference.
value
New value.
selectorExpression
Property selector expression.

戻り値: True if value was changed.

SetField``1
protected virtual bool SetField<T>(T field, T value, string name)
result = viewModelBase.SetField(field, value, name)

Sets field value and raises PropertyChanged if value changed.

field
Field reference.
value
New value.
name
Property name.

戻り値: True if value was changed.

SetValue``1
protected bool SetValue<T>(T value, string name)
result = viewModelBase.SetValue(value, name)

Sets property value and raises PropertyChanged if value changed.

value
New value.
name
Property name (auto-filled by compiler).

戻り値: True if value was changed.

イベント

PropertyChanged
public event PropertyChangedEventHandler PropertyChanged
viewModelBase.PropertyChanged += handler

PropertyChanged.