You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

设置Windows Forms深色模式时触发“索引器只读”错误求助

Windows Forms深色模式实现报错解决

你的报错原因是**LetalskaDruzba.DefaultBackColor是只读静态属性**,无法直接赋值修改。要设置窗体背景色,需操作当前窗体实例的BackColor属性,而非类的静态默认属性。

修正后的代码如下:

public void TemniNacin()
{
    // 修改当前窗体实例的背景色,而非类的静态默认属性
    this.BackColor = Color.Black;
    foreach (var textboxi in Controls.OfType<TextBox>())
    {
        textboxi.BackColor = Color.Black;
        textboxi.ForeColor = Color.White;
    }
}

额外补充两个注意点:

  • 若LetalskaDruzba是其他窗体类,需先获取该窗体的实例对象,再修改其BackColor,不能直接通过类名访问实例属性
  • 若要批量修改所有嵌套在容器控件内的TextBox,需递归遍历控件集合,当前代码仅会修改直接隶属于当前窗体的TextBox

内容的提问来源于stack exchange,提问作者Teocko

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 15:05:14