【问题标题】:Canvas having windows functionality具有 Windows 功能的画布
【发布时间】:2011-12-12 09:08:16
【问题描述】:

我正在开发的应用程序有一个主要的自定义 WPF 窗口。

在画布中绘制的主窗口(绘图图)内有一个控件。现在的问题是,我想为这个画布实现一个类似窗口的方法(标题栏+关闭按钮+在主窗口内移动+调整它的大小)。我应该如何处理?

问题是,如果我将控件设计为一个单独的窗口,它将不会与我的应用程序相关联(在 UI 意义上)。

我认为是在画布中绘制一个标题栏,并使用 Windows 标题栏功能来模仿它。但是不知道有没有更好的办法。

【问题讨论】:

  • 我不确定你的意思。为什么不把你的画布作为任何窗口的根元素,并拥有窗口类提供给你的一切?
  • 我认为这不可能。您不能将 Window 对象放在另一个窗口中并强制它保留在那里。但是,您可以设计或者找到一个已经存在的 3rd 方控件来模仿真实窗口的行为。
  • @Dror : 不应该使用第三方控件。

标签: wpf windows wpf-controls titlebar


【解决方案1】:

听起来你想做的是使用 WPF 编写一个传统的MDI application(“多文档界面”):

这种应用程序设计风格在今天并不像在 Windows 窗体时代那样普遍。有很多支持和反对的论据,但如果你确定这是你想要的,那么 codeplex 上有一个 WPF 库可以处理这个问题:

在 UX stackexchange 上还有一个关于 alternatives to MDI layout 的讨论,您可能会觉得有趣。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-06
    • 2022-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-06
    • 2017-04-25
    • 2016-02-28
    相关资源
    最近更新 更多