社区
组件/控件开发
帖子详情
WPF中类似TreeListView控件的实现
wfg2004
2008-10-08 06:34:40
在WPF中实现ListView和TreeView结合的效果。
当我点击ListView的一行中的一个按钮时,
这行相应的详细数据以TreeView的方式详细展开,
效果见附件。
有知道源代码的或者知道解决思路的请告诉我,谢谢哟
分不够再加
最初载入的展开前效果
点击一行展开效果
全部展开效果
...全文
589
9
打赏
收藏
WPF中类似TreeListView控件的实现
在WPF中实现ListView和TreeView结合的效果。 当我点击ListView的一行中的一个按钮时, 这行相应的详细数据以TreeView的方式详细展开, 效果见附件。 有知道源代码的或者知道解决思路的请告诉我,谢谢哟 分不够再加 最初载入的展开前效果 点击一行展开效果 全部展开效果
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lookmai
2010-09-28
打赏
举报
回复
能否发一份源码给我?谢谢
maibo@163.com
[Quote=引用 6 楼 zhouyongh 的回复:]
呵呵,很眼熟。
刚刚写了这样的一个控件 重写一下TreeView和TreeViewItem, 再搞一下DataTemplate和HierarchicalDataTemplate就可以了。
给你写点代码 :
XAML code
<Style x:Key="TreeViewStyle" TargetType="TreeView">
<Setter Property=……
[/Quote]
拉达曼迪斯II
2008-10-10
打赏
举报
回复
自定义ITEMTEMPLATE。
有什么困难的?????
wfg2004
2008-10-10
打赏
举报
回复
我只找到一个很类似的,是从TreeView继承改写的,但是还不是偶想要的效果。
看这个样子好像真的很难,请世界高手出现啊 呵呵
Doublehappywolf
2008-10-10
打赏
举报
回复
我觉得好东西大家应该一起分享,我前段时间也是一直在求购,就是没人给我回,唉,大家不要只有求时才出现嘛
Doublehappywolf
2008-10-10
打赏
举报
回复
我有前几天也是需要解决这个问题,不过我现在有了一个控件,可以解决这个问题,是一个叫SUPERGRID的控件,你给我邮箱我发给你,当然不要忘记给分哦,分数你看着给
zhouyongh
2008-10-10
打赏
举报
回复
呵呵,很眼熟。
刚刚写了这样的一个控件 重写一下TreeView和TreeViewItem, 再搞一下DataTemplate和HierarchicalDataTemplate就可以了。
给你写点代码 :
[code=XAML]
<Style x:Key="TreeViewStyle" TargetType="TreeView">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Margin" Value="0"/>
<Setter Property="SnapsToDevicePixels" Value="True"/>
<Setter Property="Width" Value="Auto"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TreeView">
<Border SnapsToDevicePixels="True">
<ScrollViewer CanContentScroll="False" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Disabled"
Padding="{TemplateBinding Control.Padding}" Background="{TemplateBinding Panel.Background}"
SnapsToDevicePixels="{TemplateBinding UIElement.SnapsToDevicePixels}" Focusable="False">
<ItemsPresenter />
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
[/code]
[code=XAML]
<Style x:Key="TreeViewItemStyle" BasedOn="{x:Null}" TargetType="{x:Type TreeViewItem}">
<Setter Property="IsExpanded" Value="{Binding Path=IsExpanded, Mode=OneWay}" />
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="SnapsToDevicePixels" Value="True"/>
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate TargetType="TreeViewItem">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition />
</Grid.RowDefinitions>
<ContentPresenter Content="{TemplateBinding HeaderedContentControl.Header}" Margin="0"
ContentTemplate="{TemplateBinding HeaderedContentControl.HeaderTemplate}"
ContentTemplateSelector="{TemplateBinding HeaderedContentControl.HeaderTemplateSelector}"
ContentSource="Header"
Name="PART_Header" SnapsToDevicePixels="{TemplateBinding UIElement.SnapsToDevicePixels}"/>
<ItemsPresenter Name="ItemsHost" Margin="0" Grid.Row="1"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="TreeViewItem.IsExpanded" Value="False">
<Setter Property="UIElement.Visibility" TargetName="ItemsHost">
<Setter.Value>
<x:Static Member="Visibility.Collapsed" />
</Setter.Value>
</Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
[/code]
你要做的就是使ContentPresenter 和 ItemsPresenter 使用适当的数据模板,DataType或者DataTemplateSelector。
我是使用M-V-ViewModel做的,DataContext是我自己定义的TreeViewItemViewModel,当然,数据结构由你自己定义。
其实这种控件的制作很简单,你找准思路就可以。WPF要思路活一点,不要一眼看成什么ListView和TreeView的结合体,那样会限制你。
外面是一个ItemsControl, 里面每一个Item是一个HeaderedItemsControl。剩下你选一下WPF哪些控件拿起来用方便,组合捏吧改一改,就可以了。
Hope this helps
panda3
2008-10-09
打赏
举报
回复
只能帮顶
一游
2008-10-09
打赏
举报
回复
这个要写出来很有点麻烦,你只能看运气了,看有没有以前做过有现成的代码,
lupanlupan
2008-10-08
打赏
举报
回复
占沙发
WPF
控件
Tree
Grid/
类似
Tree
ListView
资源文件介绍
WPF
控件
Tree
Grid/
类似
Tree
ListView
资源文件介绍 【下载地址】
WPF
控件
Tree
Grid
类似
Tree
ListView
资源文件介绍 这是一个专为
WPF
开发者设计的
Tree
Grid
控件
资源库,
实现
了
类似
Tree
ListView
的功能。通过继承
WPF
的Datagrid
控件
,它提供了展开折叠的树形结构,并支持...
【亲测免费】
WPF
控件
Tree
Grid:高效树形列表视图解决方案
WPF
控件
Tree
Grid:高效树形列表视图解决方案 【下载地址】
WPF
控件
Tree
Grid
类似
Tree
ListView
资源文件介绍 这是一个专为
WPF
开发者设计的
Tree
Grid
控件
资源库,
实现
了
类似
Tree
ListView
的功能。通过继承
WPF
的Datagrid
控件
,它提供了展开折叠的树形结构,并支持编辑操作。
控件
完...
Tree
List的
实现
方法
做项目的时候根据需求,
WPF
现有的
控件
不能完全满足我们的需求, 很多时候我们需要对现有的
控件
做一下加工。 最简单的我们可能会把
Tree
转换成List形式有的叫Grid形式就像下图一样 今天我先做一个完全用样式加工的例子,有时间我再把它做深加工写成一下通能形式 我们要先把
tree
View重写一下 public class
Tree
ListView
:
WPF
实现
树形表格
控件
(
Tree
ListView
)
本文将探讨如何利用
WPF
框架
实现
树形表格
控件
,该
控件
不仅能够有效地展示复杂的层级数据,还能够提供丰富的个性化定制选项。我们将介绍如何使用
WPF
提供的
控件
、模板、布局、数据绑定等技术来构建这样一个树形表格。新建一个继承自
Tree
View的
控件
,并定义一个类型为ViewBase的View依赖属性,用于在代码
中
指定列。
【亲测免费】 探索
WPF
多选
Tree
ListView
控件
:高效处理层级数据
探索
WPF
多选
Tree
ListView
控件
:高效处理层级数据 【下载地址】
WPF
多选
Tree
ListView
控件
资源下载
WPF
多选
Tree
ListView
控件
资源下载本仓库提供了一个功能强大的
WPF
Tree
ListView
控件
资源文件,该
控件
支持多选功能,适用于需要展示层级结构数据并允许用户进行多选操作的场景 ...
组件/控件开发
8,831
社区成员
7,151
社区内容
发帖
与我相关
我的任务
组件/控件开发
.NET技术 组件/控件开发
复制链接
扫一扫
分享
社区描述
.NET技术 组件/控件开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章