如何获得一个标签的换行功能的文本,这是越界?


当前回答

不确定它是否适合所有用例,但我经常使用一个简单的技巧来获得包装行为: 把你的标签与AutoSize=false在1x1 TableLayoutPanel,这将照顾标签的大小。

其他回答

如果事先要在标签中输入文本,则可以这样做。

对于设计师来说, 右键单击标签并单击属性。 在“属性”中搜索文本选项卡。 单击选项卡,然后单击旁边的箭头按钮。 上面会弹出一个对话框。 您可以在弹出框中按enter键添加行和在记事本中键入! (按enter键,你想包装标签文本)

我必须找到一个快速的解决方案,所以我只是使用了一个具有这些属性的文本框:

var myLabel = new TextBox
                    {
                        Text = "xxx xxx xxx",
                        WordWrap = true,
                        AutoSize = false,
                        Enabled = false,
                        Size = new Size(60, 30),
                        BorderStyle = BorderStyle.None,
                        Multiline =  true,
                        BackColor =  container.BackColor
                    };

使用System.Windows.Forms.LinkLabel代替Label,并设置属性LinkArea如下所示。

myLabel.LinkArea = new LinkArea(0, 0);

没有自动抓取属性,但可以通过编程来动态调整大小。这里有一个解决方案:

选择标签的属性 AutoSize = True MaximumSize =(宽度,高度)其中宽度=你想要标签的最大尺寸和高度=你想要它包装多少像素

在标签中使用style="overflow:Scroll",如下面的HTML。这将在面板内的标签中添加滚动条。

<asp:Label
    ID="txtAOI"
    runat="server"
    style="overflow:Scroll"
    CssClass="areatext"
    BackColor="White"
    BorderColor="Gray"
    BorderWidth="1"
    Width = "900" ></asp:Label>