问下大家,如何用WPF实现这种treeview不同子节点切换不同布局和内容,左侧是treeview,右侧是按下子节点不同的布局,全部用前台xaml实现。

小小回忆录 2017-09-08 10:55:39
问下大家,如何用WPF实现这种treeview不同子节点切换不同布局和内容,左侧是treeview,右侧是按下子节点不同的布局,全部用前台xaml实现。
...全文
495 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mk_lucifer 2017-09-11
  • 打赏
  • 举报
回复
WPF有个模板选择器DataTemplateSelector,大致用途就是根据不同的元素选择不同的DataTemplate,最简单的方法就是让你的数据源有一个整数标签,根据标签选择不同的DataTemplate 。 方法1: DataTemplateSelector,模板选择器,当然在使用前要多设计几个你需要的页面。 方法2: 自建选择器,绑定Open命令,根据Open的数据源类型,选择你右侧填充的Page,然后给Page赋值DataContext。 方法3: 自己为你的数据源的数据类型编写一个ViewAttribute标签,填写View模板类型, 右侧容器是个特殊容器控件,能根据数据源的ViewAttribute来自己构建模板实例将,数据作为DataContext赋值给实力。这个原理模式类似于属性查看器,其实道理和方法2相近,但区别是全自动,更有B格,但必须利用反射。
exception92 2017-09-10
  • 打赏
  • 举报
回复
引用 4 楼 行走的沙漠的回复:
[quote=引用 3 楼 duanzi_peng 的回复:] 简单点,控制右侧部分的visibility。 复杂点,把节点对应的xaml样式放到节点的Tag属性,选择切换时绑定到右侧的ContentControl控件的Content上。
具体怎么做呢,这个Tag有什么用[/quote] Tag储存节点对应的右侧Xaml。
SDHU 2017-09-09
  • 打赏
  • 举报
回复
引用 6 楼 junleejun 的回复:
[quote=引用 5 楼 sxc176 的回复:] treeview +frame+page可以搞定 或者重写TabControl 的style 也可以做
头大大了,不知道怎么解决比较符合WPF的风格。[/quote] 个人觉得,先把功能实现,代码优化属于后续的事情
小小回忆录 2017-09-09
  • 打赏
  • 举报
回复
引用 5 楼 sxc176 的回复:
treeview +frame+page可以搞定 或者重写TabControl 的style 也可以做
头大大了,不知道怎么解决比较符合WPF的风格。
SDHU 2017-09-09
  • 打赏
  • 举报
回复
treeview +frame+page可以搞定 或者重写TabControl 的style 也可以做
小小回忆录 2017-09-09
  • 打赏
  • 举报
回复
引用 3 楼 duanzi_peng 的回复:
简单点,控制右侧部分的visibility。 复杂点,把节点对应的xaml样式放到节点的Tag属性,选择切换时绑定到右侧的ContentControl控件的Content上。
具体怎么做呢,这个Tag有什么用
exception92 2017-09-09
  • 打赏
  • 举报
回复
简单点,控制右侧部分的visibility。 复杂点,把节点对应的xaml样式放到节点的Tag属性,选择切换时绑定到右侧的ContentControl控件的Content上。
小小回忆录 2017-09-08
  • 打赏
  • 举报
回复
小小回忆录 2017-09-08
  • 打赏
  • 举报
回复

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧