【发布时间】:2011-01-17 23:51:18
【问题描述】:
我想用数据源构建我自己的控件。这个控件应该画一个简单的二叉树:-)
我应该使用什么作为绘图基础?我应该使用画布还是应该覆盖一些绘制事件方法,如 onRender()?
节点应该是某种用户控件。
谢谢。
【问题讨论】:
我想用数据源构建我自己的控件。这个控件应该画一个简单的二叉树:-)
我应该使用什么作为绘图基础?我应该使用画布还是应该覆盖一些绘制事件方法,如 onRender()?
节点应该是某种用户控件。
谢谢。
【问题讨论】:
选择容器应该由您需要的功能驱动。 需要绝对定位时使用 Canvas。
但是,控件可以是 ItemsControl,您可以在 ItemsPanel 中使用 Canvas。毕竟画布只是为了展示/排列。
您可以使用 ItemsControlTemplate 为节点设置 DataTemplate。
看看hierarchical datatemplates at the end of this article
也许您所要做的就是为树视图控件创建一个模板并将树视图控件子类化以覆盖排列过程。
你也可以向this approach by Josh Smith学习
【讨论】: