|
@@ -57,6 +57,7 @@ public static class Navigation
|
|
public static async Task<object?> Popup<T>(T viewModel, bool canTapAway = true)
|
|
public static async Task<object?> Popup<T>(T viewModel, bool canTapAway = true)
|
|
where T : IViewModelBase, IPopupViewModel
|
|
where T : IViewModelBase, IPopupViewModel
|
|
{
|
|
{
|
|
|
|
+ await viewModel.Activate();
|
|
var _result = await DialogHostAvalonia.DialogHost.Show(viewModel, (object sender, DialogClosingEventArgs eventArgs) =>
|
|
var _result = await DialogHostAvalonia.DialogHost.Show(viewModel, (object sender, DialogClosingEventArgs eventArgs) =>
|
|
{
|
|
{
|
|
if(!canTapAway && !viewModel.IsClosed)
|
|
if(!canTapAway && !viewModel.IsClosed)
|
|
@@ -64,6 +65,7 @@ public static class Navigation
|
|
eventArgs.Cancel();
|
|
eventArgs.Cancel();
|
|
}
|
|
}
|
|
});
|
|
});
|
|
|
|
+ await viewModel.Deactivate();
|
|
return _result;
|
|
return _result;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -77,6 +79,7 @@ public static class Navigation
|
|
public static async Task<TResult?> Popup<T, TResult>(T viewModel, bool canTapAway = true)
|
|
public static async Task<TResult?> Popup<T, TResult>(T viewModel, bool canTapAway = true)
|
|
where T : IViewModelBase, IPopupViewModel<TResult>
|
|
where T : IViewModelBase, IPopupViewModel<TResult>
|
|
{
|
|
{
|
|
|
|
+ await viewModel.Activate();
|
|
var _result = await DialogHostAvalonia.DialogHost.Show(viewModel, (object sender, DialogClosingEventArgs eventArgs) =>
|
|
var _result = await DialogHostAvalonia.DialogHost.Show(viewModel, (object sender, DialogClosingEventArgs eventArgs) =>
|
|
{
|
|
{
|
|
if(!canTapAway && !viewModel.IsClosed)
|
|
if(!canTapAway && !viewModel.IsClosed)
|
|
@@ -84,6 +87,7 @@ public static class Navigation
|
|
eventArgs.Cancel();
|
|
eventArgs.Cancel();
|
|
}
|
|
}
|
|
});
|
|
});
|
|
|
|
+ await viewModel.Deactivate();
|
|
return viewModel.GetResult();
|
|
return viewModel.GetResult();
|
|
}
|
|
}
|
|
|
|
|