多行文本作为Windows窗体中的按钮标签

基本上,我正在创建一个椭圆形的按钮。 但我的按钮标签太长而无法显示在一行中,因此我想将其拆分为多行,以便椭圆形按钮看起来很好。

如何在按钮上启用自动换行?

在表单加载上设置标签文本,并将Environment.Newline添加为换行符字符串,如下所示:

btnOK.Text = "OK" + Environment.NewLine + "true"; 

如果要在VS设计器中将按钮的标签设置为多行文本,可以单击属性字段右侧的“向下箭头”,然后输入多行文本。

VS文本多行属性面板

我在VS 2015中尝试了这个。

只需在文本中应该拆分的位置添加换行符。

尝试在要包装的位置添加“\ n”到按钮的Text属性。

有两种选择:

  1. 如果要创建自定义控件,请使用Autosize = true选项在其上放置标签控件。 并根据按钮大小调整其大小。
  2. 在任何地方添加一个新行(有点粗糙)。

您可以使用一个附加属性(例如, Label )创建自定义按钮,该属性将“\ n”出现转换为“真实”换行符(因为VS设计者已经10年没有这样做了):

 public string Label { get { return (string.IsNullOrEmpty(Text) ? Text : Text.Replace("\n", @"\n")); } set { Text = (string.IsNullOrEmpty(value) ? value : value.Replace(@"\n", "\n")); } } 

创建此类后,您的SuperButton将在Project页面的Toolbox中可见,因此您不会失去可视化的设计方式。

您只需要在按钮文本中插入换行符(即\ n)。

例:

 Button1.AutoSize = true; Button1.Text = "This is \n The Button Text";