Open sandboxFocus

Namespace Metalama.Patterns.Wpf

Classes

AsyncDelegateCommand

An asynchronous implementation of ICommand that uses delegates for the execute and can-execute logic, without accepting a command parameter. This class is typically generated by the CommandAttribute aspect for methods returning Task or when Background is true.

AsyncDelegateCommand<T>

An asynchronous implementation of ICommand that uses delegates for the execute and can-execute logic, accepting a command parameter of type T. This class is typically generated by the CommandAttribute aspect for methods returning Task or when Background is true.

BaseAsyncDelegateCommand

Base class for all asynchronous delegate-based implementations of ICommand in this package. Extends BaseDelegateCommand with support for task tracking, cancellation, and concurrent execution control.

BaseDelegateCommand

Base class for all delegate-based implementations of ICommand in this package. Provides common functionality for command execution and INotifyPropertyChanged integration.

CommandAttribute

Aspect that generates a WPF command property from a method. When applied to a method, it introduces an ICommand property that invokes the method when executed. The aspect supports synchronous commands, asynchronous commands (returning Task), and background commands.

DelegateCommand

An implementation of ICommand that uses delegates for the execute and can-execute logic, without accepting a command parameter. This class is typically generated by the CommandAttribute aspect.

DelegateCommandFactory

Factory class that creates instances of DelegateCommand, DelegateCommand<T>, AsyncDelegateCommand, and AsyncDelegateCommand<T>. This class is used internally by the CommandAttribute aspect to generate command properties.

DelegateCommand<T>

An implementation of ICommand that uses delegates for the Execute(T) and CanExecute(T) logic, accepting a command parameter of type T. This class is typically generated by the CommandAttribute aspect.

DependencyPropertyAttribute

Aspect that transforms a C# automatic property into a WPF dependency property. When applied to an automatic property in a class derived from DependencyObject, it generates the static DependencyProperty field and replaces the property accessors to use GetValue(DependencyProperty) and SetValue(DependencyProperty, Object).

Structs

DelegateCommandExecution

Represents a single execution of an asynchronous delegate command, providing access to the execution's Task and allowing cancellation of that specific invocation.

Interfaces

IAsyncCommand

Represents an ICommand that executes asynchronously, providing properties to monitor execution state and methods to cancel running executions.