Class DeleteGridItem<T>
A view command that prompts a confirmation to the user then deletes the selected items in a grid from the current IEntityUpdater context and removes them from the grid
The pending change can be committed by the user executing the Save command
Inheritance
Implements
Inherited Members
Namespace: LemonEdge.Client.Core.Commands.ViewCommands
Assembly: LemonEdge.ClientCore.dll
Syntax
public class DeleteGridItem<T> : ViewCommand, IHasChildren<EPCommandWithDescriptor>, IHasChildren, IDisposable, IEPCommandWithDescriptor, IEPCommand, ICommand, ICommandDescriptor
Type Parameters
Name | Description |
---|---|
T | The type of entity in the grid |
Constructors
DeleteGridItem(IRootController, IModelLayoutDisplayer, IDeleteGridItemImplementor<T>, ILogger<DeleteGridItem<T>>)
Creates a new DeleteGridItem view command
Declaration
public DeleteGridItem(IRootController root, IModelLayoutDisplayer owner, IDeleteGridItemImplementor<T> controller, ILogger<DeleteGridItem<T>> logger)
Parameters
Type | Name | Description |
---|---|---|
IRootController | root | The root controller, for service access. |
IModelLayoutDisplayer | owner | The owning context this command operates within, and the context it will delete the selected grid items from |
IDeleteGridItemImplementor<T> | controller | The grid implementation to remove selected items from |
ILogger<DeleteGridItem<T>> | logger |
Properties
Description
A user friendly description of this command
Declaration
public override string Description { get; }
Property Value
Type | Description |
---|---|
string |
Overrides
IconID
Declaration
public override Guid IconID { get; }
Property Value
Type | Description |
---|---|
Guid |
Overrides
IncludeInSimple
By default view commands are included in any simple layout filtering of commands if they are part of the quick access
Declaration
public override bool IncludeInSimple { get; }
Property Value
Type | Description |
---|---|
bool |
Overrides
IsQuickAccessCommand
Indicates this command should also be available in a quick access manner if the ui permits it to be highlighted and seperated for quick access among a group of other commands
For instance in the desktop application view commands are accessible from a drop down menu by default, but if this is true they are also directly accessible from the view itself
Declaration
public override bool IsQuickAccessCommand { get; }
Property Value
Type | Description |
---|---|
bool |
Overrides
Key
Indicates the command key to use for executing this from a keyboard command
Declaration
public override KeyboardKey Key { get; }
Property Value
Type | Description |
---|---|
KeyboardKey |
Overrides
ModifierKeys
Indicates the modifier keys to be used with Key when executing this command from the keyboard
Declaration
public override KeyboardModifierKeys ModifierKeys { get; }
Property Value
Type | Description |
---|---|
KeyboardModifierKeys |
Overrides
OverlayIconID
On some clients another image can be overlayed on the bottom right of the main icon (for indicating add, remove, etc)
This optional overlay image can be specified here, either a ImageType or ImageID
Declaration
public override Guid? OverlayIconID { get; }
Property Value
Type | Description |
---|---|
Guid? |
Overrides
Title
The title of this command
Declaration
public override string Title { get; }
Property Value
Type | Description |
---|---|
string |
Overrides
ToolTip
A user friendly tool tip for this command functionality, by default the Description
Declaration
public override string ToolTip { get; }
Property Value
Type | Description |
---|---|
string |
Overrides
Methods
InternalCanExecuteAsync(object)
Returns true if there are selected items in the grid that the user has permissions to delete
Declaration
public override Task<bool> InternalCanExecuteAsync(object parameter)
Parameters
Type | Name | Description |
---|---|---|
object | parameter | The command parameter |
Returns
Type | Description |
---|---|
Task<bool> | True if there are selected items in the grid that the user has permissions to delete |
Overrides
InternalExecuteAsync(object)
Prompts for confirmation to delete the selected rows, then deletes them from the context (effectively adding them to pending changes of the context, the changes still need to be saved), and then removes them from the grid
Declaration
public override Task InternalExecuteAsync(object parameter)
Parameters
Type | Name | Description |
---|---|---|
object | parameter | The command parameter |
Returns
Type | Description |
---|---|
Task | A task indicating the completion of the operation |
Overrides
RemoveEventHandlersOnDispose()
Provides an inheriting command the opoortunity to remove any event handlers being listened to before this command is disposed
Declaration
protected override void RemoveEventHandlersOnDispose()