【问题标题】:Styling WPF TreeView to display rows of buttons?样式化 WPF TreeView 以显示按钮行?
【发布时间】:2013-04-22 08:12:30
【问题描述】:

我有一个关于使用 WPF TreeView 控件的问题。我有 n 个层次树节点,并希望在 TreeView 控件中显示它们,但具有某种“不寻常”的可视化效果。假设这些是我的节点:

Level1Item1
   Level2Item1
      Level3Item1
      Level3Item2
   Level2Item2
      Level3Item3
      Level3Item4
   Level2Item3
Level1Item2
   Level2Item4
   Level2Item5
   Level2Item6
Level1Item3
   Level2Item7
   Level2Item8
   Level2Item9

现在我不想像上面那样显示它们,而是将每个级别显示为一行按钮,其中只有所选父节点的子节点可见,例如:

[Level1Item1] Level1Item2 Level1Item3
Level2Item1 [Level2Item2] Level2Item3
Level3Item3 Level3Item4

方括号中的项目是选定的节点。

标准 wpf TreeView 控件是否可以通过某种方式设置样式以实现这一点?

谢谢!

【问题讨论】:

    标签: wpf treeview


    【解决方案1】:

    WPF TreeView 控件可以任意设置样式。最好的开始方式是在 Expression Blend 中打开您的项目,然后开始在 TreeView 控件模板中自定义标准项目模板。它非常简单,但是您需要了解如何使用表达式混合才能通过适当的工具有效地完成它。

    【讨论】:

    • 感谢您的回复,但恐怕没那么容易。首先,我没有使用 Blend,但认为自己在 XAML 方面的经验足够丰富,可以不用它。问题是父节点和它的子节点将被放入同一个“项目容器”中,这会导致缩进,我想避免这种情况(这在我的原始帖子中没有正确解释,所以请原谅)
    • 擅长 XAML 是不够的,Blend 允许您破解现有的控件模板并将它们变成您自己的。您确实需要使用这样的工具(或等效工具)来调整现有模板
    猜你喜欢
    • 1970-01-01
    • 2012-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-19
    • 2013-07-11
    • 1970-01-01
    相关资源
    最近更新 更多