Command<T>
Namespace: Wisej.Web
Assembly: Wisej.Framework (3.5.0.0)
Implements the ICommand interface wrapping execute and canExecute actions.
- C#
- VB.NET
public class Command<T> : Command
Public Class Command(Of T)
Inherits Command
You can use this class to wrap custom commands to bind to controls that implement the ICommandSource interface and need to access the typed data source records. In the snippet below, the CommandDemoViewModel class derives from BindingList<Customer> and allows the commands to directly interact with the typed DataItem property.
public CommandDemoViewModel : BindingList<Person>
{
public Wisej.Web.ICommand SaveCommand { get; }
public CommandDemoViewModel()
{
this.SaveCommand = new Command<Person>(
execute: args => {
DB.Save(args.DataItem);
},
canExecute: args => {
return args.DataItem.Name != null &&
args.DataItem.Age > 0;
});
}
}
Now you can use data binding or a code assignment to connect the view model's Add command to a button's Command property.
Parameters
| Name | Description |
|---|---|
| T | The Type of the data passed to the actions. |
Constructors
Command(execute, canExecute)
Initializes a new instance of Command.
| Name | Type | Description |
|---|---|---|
| execute | Action<CommandArgs<T>> | |
| canExecute | Func<CommandArgs<T>, Boolean> |
Implements
| Name | Description |
|---|---|
| ICommand | Defines a command that can be used for data binding. |