所以情况是这样的:
我创建了一个自定义按钮来最小化我的 WPF 应用程序,
问题是它会立即最小化到任务栏(与具有 Win7 最小化效果的随机应用程序不同)。
我的问题是,当我的自定义按钮最小化时,我怎样才能把它放在我的自定义按钮上?
谢谢你。
你可以 P/Invoke AnimateWindow来添加你想要的效果。
在 Button Click 事件中使用它(边框导致最小化动画)
WindowStyle = WindowStyle.SingleBorderWindow;
WindowState = WindowState.Minimized;
覆盖 OnActivate 以再次隐藏窗口最大化的边框
protected override void OnActivated(EventArgs e)
{
base.OnActivated(e);
if (WindowStyle != WindowStyle.None)
{
Dispatcher.BeginInvoke(DispatcherPriority.ApplicationIdle, (DispatcherOperationCallback)delegate(object unused)
{
WindowStyle = WindowStyle.None;
return null;
}
, null);
}
}