【问题标题】:How to create label-like explanatory text fields in C#?如何在 C# 中创建类似标签的解释性文本字段?
【发布时间】:2012-01-23 09:27:31
【问题描述】:

我有一个 C# 表单。我想写一些解释。我尝试了 RichTextBox 和多行文本框。我将它们设为只读,将光标更改为默认值,以便在下图中获得指示的部分,但我无法阻止选择。我想要的格式就像标签:你不能选择文本,光标不是 IBeam 等。但是标签非常有限,我无法获得多行。如何在winforms中创建这样的解释部分,如下图红色箭头所示?

example image http://desmond.imageshack.us/Himg191/scaled.php?server=191&filename=csharpbox.jpg&res=medium

【问题讨论】:

    标签: c# winforms


    【解决方案1】:

    你可以得到一个类似的Label,只是禁用AutoSize,文本将按预期换行。

    【讨论】:

      【解决方案2】:

      您可以使用Label,只需将AutoSize 更改为false。

      Label l = new Label();
      l.AutoSize = false;
      l.Text = "Hello\nWorld";
      

      【讨论】:

      • 谢谢,我检查了属性但跳过了 AutoSize 我认为...还有一件事:如何在 Text 属性中添加“\n”?只能以编程方式实现吗?
      • 您可以通过编程方式或单击侧面的箭头,然后输入。
      • 我可以为我写的文本设置样式吗?文字颜色、粗体、斜体等
      • 您无法格式化Label 的特定部分,但您可以使用Label.FontLabel.ForeColor 为整个Label 设置文本颜色和字体
      【解决方案3】:

      在标签中插入大量文本不是一个好主意。您可以将标签替换为文本框并使用其显示属性使其看起来像标签。比如去掉边框,让背景色透明。

      如果你仍然想使用标签,也许你应该检查这个solution

      【讨论】:

        【解决方案4】:

        使用带有解释的工具提示怎么样?

        【讨论】:

          猜你喜欢
          • 2015-08-08
          • 2019-07-17
          • 2012-05-31
          • 2021-06-01
          • 1970-01-01
          • 1970-01-01
          • 2020-08-25
          • 2016-11-11
          • 1970-01-01
          相关资源
          最近更新 更多