Files
HandyControl/src/Shared/HandyControl_Shared/Interactivity/Commands/PushMainWindow2TopCommand.cs
T
2019-05-28 23:47:07 +08:00

28 lines
897 B
C#

using System;
using System.Windows;
using System.Windows.Input;
using System.Windows.Interop;
using HandyControl.Tools.Interop;
namespace HandyControl.Interactivity
{
public class PushMainWindow2TopCommand : ICommand
{
public bool CanExecute(object parameter) => true;
public void Execute(object parameter)
{
if (Application.Current.MainWindow != null && Application.Current.MainWindow.Visibility != Visibility.Visible)
{
Application.Current.MainWindow.Show();
var hwndSource = (HwndSource)PresentationSource.FromDependencyObject(Application.Current.MainWindow);
if (hwndSource != null)
{
UnsafeNativeMethods.SetForegroundWindow(hwndSource.Handle);
}
}
}
public event EventHandler CanExecuteChanged;
}
}