【问题标题】:WPF : How to move a maximized custom window?WPF:如何移动最大化的自定义窗口?
【发布时间】:2010-11-08 12:07:56
【问题描述】:

我正在开发一个自定义窗口,以便为我的应用程序添加更多样式。

我遵循了一些教程来启用基本的窗口行为:

  • 结束
  • 最大化
  • 最小化
  • 移动
  • 调整大小

这些都没问题。

我想要什么是我相信的 Windows 7 功能: 当一个窗口最大化时,我仍然可以将它拖到另一个屏幕上,在那里它会保持最大化状态。

你知道我该怎么做吗?

PS:我使用的教程:

非常感谢,

问候

【问题讨论】:

    标签: wpf move maximize-window


    【解决方案1】:

    如果您的标题栏中有Thumb,您可以订阅DragDelta 事件并等待WindowState == WindowState.Maximized && dragEventArgs.Y > 100 恢复窗口。

    【讨论】:

    • 抱歉,晚了一年,但这是个好主意!我还试图创建一个新窗口(继承窗口类,作为 UserControl),但正如 Decyclone 所说,我只能为窗口创建一个新模板。
    【解决方案2】:

    您为什么要实现 Windows 已经为您做的事情?

    该功能是 Windows 7 特定的,即使您为窗口创建自定义模板,窗口也会处理它。现在,我想您所要做的就是通过拇指调用DragMove() 来启用窗口的移动。

    【讨论】:

    • 你好 Decyclone,这就是我所做的,但它没有为您提供 Windows 7 最大化行为,也没有提供一半屏幕宽度的窗口(将其拖动到左侧或屏幕右侧)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-24
    • 2020-01-23
    • 2012-02-29
    相关资源
    最近更新 更多