【问题标题】:Can I stop ShowSelectionMargin from messing up my background color?我可以阻止 ShowSelectionMargin 弄乱我的背景颜色吗?
【发布时间】:2014-01-26 07:09:07
【问题描述】:

我的应用程序中有一个 RichTextBox,它一开始是禁用的(灰色),一旦打开文件就会启用(白色)。这一直运行良好。

但是,当我将 ShowSelectionMargin 属性设置为 True(这对这个应用程序来说将是一个非常有用的更改)时,它会将背景永久变为灰色。我认为这可能是 DotNet 中的一个错误(我相信它目前在 .NET 4.5 下运行),但是否有解决方法?

(可能与Why does my control extending RichTextBox defaults to gray background?有关。)

哦,我只是想出了一个解决方法,但我会继续发布这个(并回答它),以防其他人来寻找(或有更好的解决方案)。

【问题讨论】:

    标签: c# winforms


    【解决方案1】:

    好的,我认为这里的问题可能与它实际上是启用/禁用的包含控件(RichTextBox 嵌入其中)有关。 (我继承了这段代码,有时无法跟踪所有部分)

    无论如何,在这种情况下,解决方法是非常清楚地切换它。这是成功打开文件后运行的代码的一部分:

    _sfmEditorView.Enabled = false; // had to add this line
    _sfmEditorView.Enabled = true;
    

    【讨论】:

      【解决方案2】:

      这是另一种解决方法(我刚刚在 How to change the background color of a rich text box when it is disabled? 找到),它不能完全启用/禁用(因为选择/复制仍然可用),但在我的情况下它可能会更方便:

      richTextBox.ReadOnly = true; 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-15
        • 2018-10-22
        • 2017-11-10
        • 1970-01-01
        • 1970-01-01
        • 2011-04-13
        相关资源
        最近更新 更多