好的,这很奇怪。
TreeView控件的预期行为是,如果ShowNodeToolTips设置为false,那么,当树节点的标签超出控件的宽度时(或者更确切地说,它的右边缘超过右手边)客户区的边缘),然后在节点上方显示工具提示,显示完整项目的文本。
我想禁用它,因为上述语义并不总是有效,具体取决于树视图所包含的内容。所以我已经推出了自己的工具提示(并且比默认工具提示更好!) - 但我希望能够在本机工作的情况下禁用“默认”行为。
那么,任何人都可以指出我在哪个消息上发布到TreeView以禁用该行为的正确方向?我查看了windows控件参考,但找不到任何看起来可能是那个的。
答案 0 :(得分:1)
试试这个:
private const int TVS_NOTOOLTIPS = 0x80;
protected override System.Windows.Forms.CreateParams CreateParams
{
get
{
CreateParams p = base.CreateParams;
p.Style = p.Style | TVS_NOTOOLTIPS;
return p;
}
}
答案 1 :(得分:0)
很抱歉,但发现这个没有多大帮助...... http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=337872
作为一个相当痛苦的解决方法,我唯一的建议是始终将Text设置为空以禁止任何工具提示,使用TreeNode.Tag属性存储要显示的节点的实际文本,以及所有者 - 自己写文本。