DevExpress實(shí)現(xiàn)自定義TreeListNode的Tooltip的方法
更新時(shí)間:2014年08月06日 17:41:39 投稿:shichen2014
這篇文章主要介紹了DevExpress實(shí)現(xiàn)自定義TreeListNode的Tooltip的方法,需要的朋友可以參考下
本文實(shí)例展示了DevExpress實(shí)現(xiàn)自定義TreeListNode的Tooltip的方法,具體方法如下所示:
主要功能代碼如下:
/// <summary>
/// 為節(jié)點(diǎn)提供Tooltip
/// 說(shuō)明:
/// 1.設(shè)置tree.ToolTipController屬性
/// 2.ToolTipController的GetActiveObjectInfo事件中使用
/// 3.舉例
/// tlLHData.CustomNodeTooltip(e, node =>
///{
/// string _cabId = node.GetKeyID();
/// CCabInfo _cabinfo = LHDBHelper.GetCabInfo(_cabId);
/// if (_cabinfo != null)
/// {
/// return string.Format("核對(duì)時(shí)間:{0}\r\n在線情況:{1}\r\n最后一次活躍時(shí)間:{2}\r\n",
/// _cabinfo.ChkDataTime,
/// _cabinfo.CtuOnlineStatus == 1 ? "在線" : "未上線",
/// _cabinfo.LastAliveTime);
/// }
/// return string.Empty;
///});
/// </summary>
/// <param name="tree">TreeList</param>
/// <param name="e">ToolTipControllerGetActiveObjectInfoEventArgs</param>
/// <param name="builderNodeTooltipHandler">委托</param>
public static void CustomNodeTooltip(this TreeList tree, ToolTipControllerGetActiveObjectInfoEventArgs e, Func<TreeListNode, string> builderNodeTooltipHandler)
{
if (e.SelectedControl is DevExpress.XtraTreeList.TreeList)
{
TreeList _tree = (TreeList)e.SelectedControl;
TreeListHitInfo _hit = _tree.CalcHitInfo(e.ControlMousePosition);
if (_hit.HitInfoType == HitInfoType.Cell)
{
TreeListViewInfo _viewInfo = _tree.ViewInfo;
RowInfo _rowInfo = _viewInfo.GetRowInfoByPoint(e.ControlMousePosition);
CellInfo _cellInfo = _rowInfo.Cells[_hit.Column.VisibleIndex] as CellInfo;
EditHitInfo _editHitInfo = _cellInfo.EditorViewInfo.CalcHitInfo(e.ControlMousePosition);
if (_editHitInfo.HitTest == EditHitTest.MaskBox)
{
string _toolTip = builderNodeTooltipHandler(_hit.Node);
if (!string.IsNullOrEmpty(_toolTip))
e.Info = new ToolTipControlInfo(_cellInfo, _toolTip);
}
}
}
}
代碼運(yùn)行效果如下:

您可能感興趣的文章:
相關(guān)文章
C#實(shí)現(xiàn)簡(jiǎn)單的天氣預(yù)報(bào)示例代碼
這篇文章主要介紹了C#實(shí)現(xiàn)簡(jiǎn)單的天氣預(yù)報(bào)示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
WCF實(shí)現(xiàn)進(jìn)程間管道通信Demo分享
下面小編就為大家分享一篇WCF實(shí)現(xiàn)進(jìn)程間管道通信Demo,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-12-12
C# 系統(tǒng)熱鍵注冊(cè)實(shí)現(xiàn)代碼
簡(jiǎn)單點(diǎn)說(shuō)就是為程序制定快捷鍵勒。。很多軟件都帶熱鍵功能的,通過(guò)以下方式可以實(shí)現(xiàn)2個(gè)鍵或3個(gè)鍵的快捷鍵,相當(dāng)之使用,具體實(shí)現(xiàn)方法看后文吧。2009-02-02
C#針對(duì)xml基本操作及保存配置文件應(yīng)用實(shí)例
這篇文章主要介紹了C#針對(duì)xml基本操作及保存配置文件應(yīng)用實(shí)例,包括了針對(duì)XML文件的定義、初始化、創(chuàng)建、以及增刪改查等基礎(chǔ)操作,并配有詳細(xì)的實(shí)例加以說(shuō)明,需要的朋友可以參考下2014-10-10

