corelibraries-devexpress-dot-mvvm-80f9bf8a.md
A ViewModel that generates a dialog button.
Namespace : DevExpress.Mvvm
Assembly : DevExpress.Mvvm.v25.2.dll
NuGet Packages : DevExpress.Mvvm, DevExpress.Win.Navigation
public class UICommand :
BindableBase,
IUICommand
Public Class UICommand
Inherits BindableBase
Implements IUICommand
The following members return UICommand objects:
Show 13 links
The following example generates dialog buttons:
UICommand registerCommand = new UICommand(
id: null,
caption: "Register",
command: new DelegateCommand<CancelEventArgs>(
cancelArgs => {
try {
myExecuteMethod();
}
catch (Exception e) {
this.GetService<IMessageBoxService>().ShowMessage(e.Message, "Error", MessageButton.OK);
cancelArgs.Cancel = true;
}
},
cancelArgs => !string.IsNullOrEmpty(registrationViewModel.UserName)
),
isDefault: true,
isCancel: false
);
UICommand cancelCommand = new UICommand(
id: MessageBoxResult.Cancel,
caption: "Cancel",
command: null,
isDefault: false,
isCancel: true
);
IDialogService service = this.GetService<IDialogService>(serviceName);
UICommand result = service.ShowDialog(
dialogCommands: new[] { registerCommand, cancelCommand },
title: "Registration Dialog",
viewModel: detailViewModel
);
Dim registerCommand As UICommand = New UICommand(
id:=Nothing,
caption:="Register",
command:=New DelegateCommand(Of CancelEventArgs)(
Function(cancelArgs)
Try
myExecuteMethod()
Catch e As Exception
Me.GetService(Of IMessageBoxService)().ShowMessage(e.Message, "Error", MessageButton.OK)
cancelArgs.Cancel = True
End Try
End Function,
Function(cancelArgs)
Not String.IsNullOrEmpty(registrationViewModel.UserName)), isDefault:=True, isCancel:=False)
Dim cancelCommand As UICommand = New UICommand(
id:=MessageBoxResult.Cancel,
caption:="Cancel",
command:=Nothing,
isDefault:=False,
isCancel:=True)
Dim service As IDialogService = Me.GetService(Of IDialogService)(serviceName)
Dim result As UICommand =
service.ShowDialog(
dialogCommands:={registerCommand, cancelCommand},
title:="Registration Dialog",
viewModel:=detailViewModel)
View Example: How to: Use DialogService
Important
DXDialogWindow remains in our WPF suite for compatibility but lacks async UICommand support and other modern features. Use ThemedWindow instead.
Object BindableBase UICommand
See Also