DevExpree XtraTreeList 如何去掉/隐藏某些节点前的图片
生活随笔
收集整理的這篇文章主要介紹了
DevExpree XtraTreeList 如何去掉/隐藏某些节点前的图片
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
? ? ? 公司winform開發用的是Dev Express的控件,有一個叫XtraTreeList的控件,通過設置SelectImageIndex或StateImageIndex為-1,圖片就可以隱藏,但是還是占位,留有空白大小就是圖片大小(SelectImageList Size設定。) 找了半天解決方案,官方說暫不支持沒有圖片同事去掉留白的功能。
最后還是在官網上找到解決方案:http://www.devexpress.com/Support/Center/p/E2153.aspx
using DevExpress.XtraTreeList; using DevExpress.XtraTreeList.ViewInfo; using System.Drawing; using DevExpress.XtraTreeList.Nodes;namespace DXSample {public class MyTreeList :TreeList {public MyTreeList() : base() { }protected override TreeListViewInfo CreateViewInfo() {return new MyTreeListViewInfo(this);}}public class MyTreeListViewInfo :TreeListViewInfo {public MyTreeListViewInfo(TreeList treeList) : base(treeList) { }protected override Point GetDataBoundsLocation(TreeListNode node, int top) {Point result = base.GetDataBoundsLocation(node, top);if (Size.Empty != RC.SelectImageSize && -1 == node.SelectImageIndex)result.X -= RC.SelectImageSize.Width;if (Size.Empty != RC.StateImageSize && -1 == node.StateImageIndex)result.X -= RC.StateImageSize.Width;return result;}protected override void CalcStateImage(RowInfo ri) {base.CalcStateImage(ri);if (Size.Empty != RC.SelectImageSize && -1 == ri.Node.SelectImageIndex)ri.StateImageLocation.X -= RC.SelectImageSize.Width;}protected override void CalcSelectImage(RowInfo ri) {base.CalcSelectImage(ri);if (-1 == ri.Node.SelectImageIndex) ri.SelectImageLocation = Point.Empty;}} }Mark 一下,以免以后忘記了。
轉載于:https://www.cnblogs.com/philosophy/archive/2013/04/10/3012397.html
總結
以上是生活随笔為你收集整理的DevExpree XtraTreeList 如何去掉/隐藏某些节点前的图片的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pr闪退怎么找回文件(如何自学pr视频剪
- 下一篇: gta5在哪里下载手机版