gpt4 book ai didi

c# - 在 WPF 中启用最大化、最小化和还原窗口(禁用手动调整大小)

转载 作者:太空狗 更新时间:2023-10-29 23:11:38 26 4
gpt4 key购买 nike

我需要在我的应用程序(C# WPF 应用程序)上启用以下功能:

  1. 正常尺寸为 1024*768
  2. 用户可以最大化应用
  3. 用户可以最小化应用
  4. 用户可以恢复应用(1024*768)
  5. 用户无法通过拖动边框来手动调整应用程序的大小。

没有任何 ResizeMode 可以满足所有这些要求。有什么办法吗?

最佳答案

我终于找到了一个相对不错的解决方案。

思路是覆盖窗口的OnStateChanged事件,取消Min/Max约束并刷新。

如果窗口没有最大化,我们简单地应用回最小/最大约束

    protected override void OnStateChanged(EventArgs e)
{
if (WindowState == WindowState.Maximized)
{
MinWidth = 0;
MinHeight = 0;
MaxWidth = int.MaxValue;
MaxHeight = int.MaxValue;

if (!m_isDuringMaximizing)
{
m_isDuringMaximizing = true;
WindowState = WindowState.Normal;
WindowState = WindowState.Maximized;
m_isDuringMaximizing = false;
}
}
else if (!m_isDuringMaximizing)
{
MinWidth = 1024;
MinHeight = 768;
MaxWidth = 1024;
MaxHeight = 768;
}

base.OnStateChanged(e);
}

关于c# - 在 WPF 中启用最大化、最小化和还原窗口(禁用手动调整大小),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2175712/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com