在获取TreeView控件以显示节点图像时出现问题.下面的代码有时会工作,但有时无法显示任何图像.
private TreeNode AddNodeForCore(TreeNode root, Core c) { string key = GetImageKey(c); TreeNode t = root.Nodes.Add(c.Name, c.Name, key, key); t.Tag = c; return t; }
请注意,当它失败时,TreeView无法显示任何节点的任何图像.TreeView确实为其分配了ImageList,图像键肯定在图像集合中.
编辑:
我的google-fu很弱.简直不敢相信我没有找到答案.
以上googled帖子的有用位实际上是:
"这是Windows XP视觉样式实现中的一个已知错误.某些控件,如ImageList,在应用程序调用Application.EnableVisualStyles()之前创建时没有正确初始化.C#中的正常Main()实现Program.cs避免这种情况.感谢回帖!"
所以基本上,保证在初始化图像列表之前调用Application.EnableVisualStyles().