c# - 在 Winforms 中使用控件(链接标签、 TreeView )

标签 c# .net winforms treeview linklabel

我在面板和 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; 
}

最佳答案

您的面板包含所有控件 - 其中之一是不能转换为 LinkLabelTreeView。在您的循环中,您需要像这样检查控件的类型:

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/

相关文章:

c# - 如何在 MVC3 中更新部分显示 View

c# - 部署 IE9 扩展

c# - WinForms:子窗体关闭父窗体

c# - 如何在同样数据绑定(bind)的代码中创建平铺图像?

.net - 访问 .NET 服务时,WebORB 会增加什么值(value)?

c# - 将文本框值发送到 SQL 数据库

c# - 将后台 worker 更新为异步等待

c# - 'string' 不包含 'Contains' 的定义

c# - string.Join Linq 查询合并数组中的两个字符串并输出为单个逗号分隔字符串

c# - 如何每次单击按钮一次退回一件商品?