PostSharpAPI ReferencePost­Sharp.​Patterns.​XamlCommand­Attribute
Open sandboxFocus

CommandAttribute Class

Custom attribute that, when applied on a property of type ICommand named say Foo, automatically create a new command class based on a method named Foo or ExecuteFoo and an optional property or method named CanFoo or CanExecuteFoo.

Inheritance
CommandAttribute
Namespace: PostSharp.Patterns.Xaml
Assembly: PostSharp.Patterns.Xaml.dll
Syntax
[MulticastAttributeUsage]
[AspectRoleDependency]
[AspectRoleDependency]
[AspectRoleDependency]
[LinesOfCodeAvoided(5)]
[HasConstraint]
[Serializer]
public class CommandAttribute : LocationLevelAspect, ILocationLevelAspect, ILocationLevelAspectBuildSemantics, IAspectBuildSemantics, IValidableAnnotation, IAspectProvider, IAspect, IService

Constructors

Name Description
CommandAttribute()

Initializes a new instance of the CommandAttribute class.

CommandAttribute(PortableFormatterConstructorContext)

Properties

Name Description
CanExecuteMethod

Gets or sets the name of the method that is called to determine whether the command can be executed. This method corresponds to the CanExecute(Object) method.

CanExecuteProperty

Gets or sets the name of the property that is evaluated to determine whether the command can be executed. This property corresponds to the CanExecute(Object) method.

ExecuteMethod

Gets or sets the name of the method that implements the command logic. This method corresponds to the to the System.Windows.Input.ICommand.Execute(System.Object) method. It is called every time the command is invoked.

Methods

Name Description
CompileTimeInitialize(LocationInfo, AspectInfo)

Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked before any other build-time method.

OnInstanceConstructed(Object)
OnPropertyGet<T>(Object, ILocationBinding, out T)
OnPropertyInitialized(LocationInitializationArgs)
OnPropertySet<T>(Object, ILocationBinding, ref T)
ProvideAspects(Object)
RegisterGenericTypeInstance(Type, Type)
RuntimeInitialize(LocationInfo)