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

发布于 2024-09-03 19:18:21 字数 90 浏览 7 评论 0原文

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

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

Basically, I am creating a button in an oval shape. But my button label is too long to display in one line, so I wanted to split it into multiple lines so that the oval button looks good.

How do I enable word wrap on a button?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

我爱人 2024-09-10 19:18:21

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

VS 文本多行属性面板

我在 VS 2015 中尝试过这个。

If you want to set a button's label to multi-line text inside the VS designer, you can click on the "down arrow" at the right of the property field and then you are able to enter multiple lines of text.

VS text multiline property panel

I tried this in VS 2015.

把人绕傻吧 2024-09-10 19:18:21

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

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

Set the label text on form load and add Environment.Newline as the newline string, like this:

btnOK.Text = "OK" + Environment.NewLine + "true";
青芜 2024-09-10 19:18:21

只需在文本中应分割的位置添加换行符即可。

Just add a newline in the text at the place where it should split.

心意如水 2024-09-10 19:18:21

尝试将“\n”添加到按钮的 Text 属性中要换行的位置。

Try to add "\n" to button's Text property in the places you want to wrap.

万劫不复 2024-09-10 19:18:21

有两个选项:

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

There are two options:

  1. If you are creating a custom control, then place a label control on it with the Autosize = true option. And adjust its size as per the buttons size.
  2. Add a new line wherever you want (a bit crude).
爱给你人给你 2024-09-10 19:18:21

您可以使用一个附加属性(例如,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"));
    }
}

一旦您创建了这样的类,您的超级按钮将在项目页面的工具箱中可见,因此您不会失去视觉设计方式。

You can create custom Button with one additional property (say, Label) which converts "\n" occurrence into "real" newline (because VS designer cannot do it already 10 years):

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

Once you created such class, your SuperButton will be visible in Toolbox at Project page, so you don't loose visual way of design.

嘦怹 2024-09-10 19:18:21

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

例子:

Button1.AutoSize = true;

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

You just need to insert a line break (i.e. \n) in the button text.

Example:

Button1.AutoSize = true;

Button1.Text = "This is \n The Button Text";
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文