diff --git a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginPage.xaml b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginPage.xaml
index 30eaccc2c..206453a80 100644
--- a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginPage.xaml
+++ b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginPage.xaml
@@ -33,7 +33,7 @@
HorizontalAlignment="Stretch" />
diff --git a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginPage.xaml.cs b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginPage.xaml.cs
index b9d636484..b00bbadd5 100644
--- a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginPage.xaml.cs
+++ b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginPage.xaml.cs
@@ -47,7 +47,7 @@ public LoginPage()
new Button()
.Content("Login")
.HorizontalAlignment(HorizontalAlignment.Stretch)
- .Command(() => vm.Login)))));
+ .Command(() => vm.DoLoginCommand)))));
#else
this.InitializeComponent();
#endif
diff --git a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginViewModel.cs b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginViewModel.cs
index a9913d62d..e86b873ce 100644
--- a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginViewModel.cs
+++ b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/LoginViewModel.cs
@@ -26,9 +26,9 @@ public LoginViewModel(
_dispatcher = dispatcher;
_navigator = navigator;
_authentication = authentication;
- Login = new AsyncRelayCommand(DoLogin);
}
-
+
+ [RelayCommand]
private async Task DoLogin()
{
#if useCustomAuthentication
@@ -45,5 +45,4 @@ private async Task DoLogin()
public string Title { get; } = "Login";
- public ICommand Login { get; }
}
diff --git a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainPage.xaml b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainPage.xaml
index bc2c09bd5..e491fd26a 100644
--- a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainPage.xaml
+++ b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainPage.xaml
@@ -45,10 +45,10 @@
PlaceholderText="Enter your name:" />
+ Command="{Binding GoToSecondViewCommand}" />
+ Command="{Binding DoLogoutCommand}" />
diff --git a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainPage.xaml.cs b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainPage.xaml.cs
index a0a156403..65dad9b57 100644
--- a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainPage.xaml.cs
+++ b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainPage.xaml.cs
@@ -1,4 +1,4 @@
-//-:cnd:noEmit
+//-:cnd:noEmit
namespace MyExtensionsApp._1.Presentation;
public sealed partial class MainPage : Page
@@ -40,13 +40,13 @@ public MainPage()
.Content("Go to Second Page")
.AutomationProperties(automationId: "SecondPageButton")
#if !useAuthentication
- .Command(() => vm.GoToSecond)
+ .Command(() => vm.GoToSecondViewCommand)
#else
- .Command(() => vm.GoToSecond),
+ .Command(() => vm.GoToSecondViewCommand),
new Button()
.Content("Logout")
.AutomationProperties(automationId: "LogoutButton")
- .Command(() => vm.Logout)
+ .Command(() => vm.DoLogoutCommand)
#endif
))));
#else
diff --git a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainViewModel.cs b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainViewModel.cs
index 3d7505dce..8dae44230 100644
--- a/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainViewModel.cs
+++ b/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Presentation/MainViewModel.cs
@@ -42,34 +42,17 @@ public MainViewModel(
#endif
#if useConfiguration
Title += $" - {appInfo?.Value?.Environment}";
-#endif
- GoToSecond = new AsyncRelayCommand(GoToSecondView);
-#if mauiEmbedding
- Counter = new RelayCommand(OnCount);
-#endif
-#if useAuthentication
- Logout = new AsyncRelayCommand(DoLogout);
#endif
}
public string? Title { get; }
-
- public ICommand GoToSecond { get; }
-#if mauiEmbedding
-
- public ICommand Counter { get; }
-#endif
-
-#if useAuthentication
- public ICommand Logout { get; }
-
-#endif
+ [RelayCommand]
private async Task GoToSecondView()
{
await _navigator.NavigateViewModelAsync(this, data: new Entity(Name!));
}
#if mauiEmbedding
-
+ [RelayCommand]
private void OnCount()
{
CounterText = ++count switch
@@ -80,6 +63,7 @@ private void OnCount()
}
#endif
#if useAuthentication
+ [RelayCommand]
public async Task DoLogout(CancellationToken token)
{
await _authentication.LogoutAsync(token);