【问题标题】:What are the advantages of the WPF ToolBar?WPF 工具栏的优点是什么?
【发布时间】:2009-06-29 15:04:25
【问题描述】:

我正在尝试决定是否应该创建一个带有按钮的简单 StackPanel,或者是否应该使用 WPF ToolBar 类来包含这些按钮(我正在创建一个简单的工具栏)。

使用 WPF 的内置 ToolBar 控件有哪些优缺点?

到目前为止,我看到的只有这些优势:

  • 工具栏可以在必要时折叠;其他项目可从上下文下拉菜单中获得。
  • 如果 ToolBar 包含在 ToolBarTray 中,则可以相对于彼此重新定位多个 ToolBar。

WPF 工具栏还有其他好处吗?这些都不适用于我的简单工具栏。

【问题讨论】:

  • 缺点是复杂性。因为我只使用一个工具栏,所以重新定位夹点将是不必要的,并且必须重新设计控件才能将其删除。
  • 您无需重新模板即可移除夹点;你只需要设置一个属性。 stackoverflow.com/questions/1050953/…
  • 是的,你是对的。这是我要删除的折叠按钮。

标签: wpf wpf-controls toolbar compare-contrast


【解决方案1】:

WPF 工具栏的可访问性可能会更好,因为它在 Windows UI 自动化中显示为带有工具栏按钮的工具栏,而不是一些随机控件。你永远不知道谁会使用你的软件。

【讨论】:

  • 很好的答案 - 我从来没有想过。
【解决方案2】:

另一个非常小的优点是ToolBar 中的按钮将正确设置样式,而 StackPanel 中的按钮将呈现其默认外观。无论如何都不是不可克服的,但还是有点烦恼。

【讨论】:

  • +1。将非本机容器中的控件重新设置样式以使其看起来像本机容器中的控件很少值得付出努力。
  • 所以工具栏会自动影响按钮的样式。
  • 是的,但是您可以将这些样式应用到您自己的按钮或复选框或其他任何东西上。查看 ToolBar 上的静态成员,了解我的意思。
【解决方案3】:

我会说使用工具栏,因为您永远不知道下一个项目何时出现并需要它。你也永远不知道这个项目什么时候可能需要它。我认为在 StackPanel 上使用它并没有任何真正的缺点,而您没有提到的优点是您将对下一个项目的内置控件有更多的经验。

另一方面,我认为使用 StackPanel 这样做并没有什么坏处,只是如果您将来需要扩展功能,则必须进行一些返工。

【讨论】:

    猜你喜欢
    • 2018-01-10
    • 1970-01-01
    • 2019-01-05
    • 2011-01-30
    • 2017-12-01
    • 2013-09-13
    • 1970-01-01
    • 1970-01-01
    • 2016-11-28
    相关资源
    最近更新 更多