我在面板和 TreeView 上添加了一个面板和两个 LinkLabel。
现在在 panel_Paint 事件中,我希望链接标签颜色变为白色, TreeView 的背景颜色变为黑色。 我该怎么做?
下面的代码仅在面板中没有 TreeView 时有效,但是当我在面板中也添加 TreeView 时,它会说:
无法将“System.Windows.Forms.TreeView”类型的对象转换为类型“System.Windows.Forms.LinkLabel”。
foreach (LinkLabel link in panel1.Controls)
{
link.LinkColor = Color.White;
}
最佳答案
您的面板包含所有控件 - 其中之一是不能转换为 LinkLabel
的 TreeView
。在您的循环中,您需要像这样检查控件的类型:
foreach (Control control in panel1.Controls)
{
if (control is LinkLabel)
{
... set link color
}
else if (control is TreeView)
{
... set background
}
}
或者,如果您只有一个 LinkLabel
和一个 TreeView
,则不需要循环 - 只需像访问 panel1
一样按名称访问它们>
关于c# - 在 Winforms 中使用控件(链接标签、 TreeView ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5388892/