當我的TreeView
中的TreeNode
被徘徊時,ToolTip
應該顯示。而當鼠標離開TreeNode
時ToolTip
應該消失。我試圖通過獲得MousePosition
的PontToClient()
和Show()
ToolTip
,只要MousePosition
沒有改變。它有效,但看起來不太好。 ToolTip
消失或不顯示,如果鼠標移動一絲絲。只要樹節點懸停,C#顯示TreeNode ToolTip
這給了一個有些工作結果
private void treeView_NodeMouseHover(object sender, TreeNodeMouseHoverEventArgs e)
{
ToolTip tip = new ToolTip();
tip.ToolTipTitle = e.Node.Name;
Point client = PointToClient(MousePosition);
while (client == PointToClient(MousePosition))
{
tip.Show(e.Node.Nodes.Count.ToString(), this, PointToClient(MousePosition));
}
tip.Dispose();
}
相反,我試圖展示ToolTip
只要TreeNode
在MousePosition
是相同觸發事件的TreeNode
。但是現在ToolTip
從來沒有顯示?
private void treeView_NodeMouseHover(object sender, TreeNodeMouseHoverEventArgs e)
{
ToolTip tip = new ToolTip();
tip.ToolTipTitle = e.Node.Name;
while (e.Node == treeView.GetNodeAt(MousePosition))
{
tip.Show(e.Node.Nodes.Count.ToString(), this, PointToClient(MousePosition));
}
tip.Dispose();
}
UPDATE
我剛剛意識到,這個結果在下面的異常?
treeView.GetNodeAt(MousePosition).Name
對象引用不設置到對象