VS2005 TreeView控件 showline 自定义图标

VS2005的Treeview控件提供了很好的导航功能,如果想自定义行格式和图标可以利用其“自定义行图标”工具进行编辑修改,先将近两天研究心得晒出,以供初级使用者参考。

1、右击该控件,并单击“显示智能标记”。

2、点击标记弹出“TreeView任务”。

3、勾选“显示行”,此时会多出一个选项“自定义行图标”。

如下图:

treeview_smart

4、选择“自定义行图标”,弹出自定义界面。

通过对“CollapseImage”及“ExpandImage”可以自定义图标的收缩及展开的图片样式。“NoExpandImage”可以设置叶节点的图片样式。

5、“文件夹名”可以自定义名字,会在网站根目录下生成相应文件夹,用以保存这些自定义图片。

treeview_lcreater

6、点击“确定”,会生成文件夹及图标。

7、如果还想对图标效果进行修改,只需在相应的文件夹目录下修改图片文件即可。

8、修改时注意图片文件名不可改动,因为这是系统默认调用的。具体命名规则见http://msdn.microsoft.com/zh-cn/library/ms366759(VS.80).aspx“使用线条图像”这个说明。

9、好啦。要想做一个漂亮的导航,还需仔细调试。图片修改后,在本地预览可能不会马上有效果。应清除系统缓存重试。上传到网站后可以看到最后效果。

10、这是本人做的一个例子http://download.csdn.net/source/2269630。希望能够给大家一个提示。谢谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要扩展 WPF TreeView 件以自定义图标和可隐藏复选框,你可以通过继承 TreeView 类来实现自定义件。 以下是一个自定义 TreeView 件的示例代码: ```csharp public class CustomTreeView : TreeView { public static readonly DependencyProperty IconProperty = DependencyProperty.Register("Icon", typeof(ImageSource), typeof(CustomTreeView)); public ImageSource Icon { get { return (ImageSource)GetValue(IconProperty); } set { SetValue(IconProperty, value); } } protected override DependencyObject GetContainerForItemOverride() { return new CustomTreeViewItem(); } protected override bool IsItemItsOwnContainerOverride(object item) { return item is CustomTreeViewItem; } } public class CustomTreeViewItem : TreeViewItem { public static readonly DependencyProperty ShowCheckBoxProperty = DependencyProperty.Register("ShowCheckBox", typeof(bool), typeof(CustomTreeViewItem), new PropertyMetadata(true)); public bool ShowCheckBox { get { return (bool)GetValue(ShowCheckBoxProperty); } set { SetValue(ShowCheckBoxProperty, value); } } public static readonly DependencyProperty IconProperty = DependencyProperty.Register("Icon", typeof(ImageSource), typeof(CustomTreeViewItem)); public ImageSource Icon { get { return (ImageSource)GetValue(IconProperty); } set { SetValue(IconProperty, value); } } public override void OnApplyTemplate() { base.OnApplyTemplate(); var checkBox = GetTemplateChild("PART_CheckBox") as CheckBox; if (checkBox != null) { checkBox.Visibility = ShowCheckBox ? Visibility.Visible : Visibility.Collapsed; } var icon = GetTemplateChild("PART_Icon") as Image; if (icon != null) { icon.Source = Icon; icon.Visibility = Icon != null ? Visibility.Visible : Visibility.Collapsed; } } } ``` 在上面的代码中,自定义 TreeView 件包含一个 Icon 属性,该属性可以设置 TreeView图标。自定义 TreeViewItem 件包含一个 ShowCheckBox 属性,该属性可以制复选框是否可见,以及一个 Icon 属性,该属性可以设置 TreeViewItem 的图标。在 OnApplyTemplate 方法中,我们可以获取 CheckBox 和 Image 件并设置它们的可见性和图标源。 在 XAML 中使用自定义 TreeView 件可以像这样: ```xml <local:CustomTreeView> <local:CustomTreeViewItem Header="Item 1" Icon="/Images/Icon1.png"> <local:CustomTreeViewItem Header="Subitem 1.1" Icon="/Images/Icon2.png"/> <local:CustomTreeViewItem Header="Subitem 1.2" Icon="/Images/Icon3.png"/> </local:CustomTreeViewItem> <local:CustomTreeViewItem Header="Item 2" Icon="/Images/Icon4.png"> <local:CustomTreeViewItem Header="Subitem 2.1" Icon="/Images/Icon5.png"/> <local:CustomTreeViewItem Header="Subitem 2.2" Icon="/Images/Icon6.png"/> </local:CustomTreeViewItem> </local:CustomTreeView> ``` 在上面的 XAML 代码中,我们可以使用 Icon 属性来设置 TreeViewTreeViewItem 的图标,并使用 ShowCheckBox 属性来TreeViewItem 的复选框是否可见。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值