【问题标题】:Changing button's background color from another winform从另一个winform更改按钮的背景颜色
【发布时间】:2021-04-19 12:53:59
【问题描述】:

我的这个项目有很多winforms,我该如何更改button background color or text color or any other attributes from another winform?我目前正在使用delegate,但这效率不高,因为每次我想更改新属性时都需要创建一个新的delegate。有没有更好的办法?

【问题讨论】:

标签: c# winforms


【解决方案1】:

在设计器中,单击您的按钮

确保GenerateMember 为真,Modifiers 为公开。使用 PascalCase 命名按钮,例如 CancelButton

现在你可以采用其他形式:

var formWithButton = new FormX();
formWithButton.CancelButton.BackColor = Color.Black;

如果您要进行大量更改,不妨考虑使用主题框架

【讨论】:

  • 感谢您的回答。但是主题框架是什么意思?我可能要做出很多改变。另外,我怎么知道 BackColor 代表背景颜色?如果我想更改字体大小或文本怎么办?那么我该如何命名它或者有没有任何文档呢?
  • Theming:将一组视觉样式应用于应用程序以更改其外观。 Winforms 不是很好,WPF 更好,但是已经在 Winforms 中创建了一些东西来做到这一点,例如 VS 的 visualstyler 插件。 BackColor 设置背景颜色,虽然我不记得是如何知道这一点的——我可能在大约 23 年前使用 VB6 时查看了 Designer 属性网格。字体由 Font 属性控制。 Microsoft 发布了一套庞大而全面的文档,称为 MSDN docs.microsoft.com/en-us/dotnet/api/…
  • FormX() 是我想要更改的表单还是我当前正在更改的表单?
  • 两者,我想。问题不是很清楚
  • 经过测试,它不起作用..我尝试放入点击事件,但背景颜色没有改变
猜你喜欢
  • 2016-03-31
  • 2021-11-26
  • 2015-06-04
  • 1970-01-01
  • 2021-06-22
  • 2015-04-03
相关资源
最近更新 更多