我需要能够在标签上滚动文字我正在使用这个用于tic tac toe游戏的信用部分。我怎样才能实现这一点我们只被教导滚动滚动条中的数字值而不是文本。
private void xGameCreditsButton_Click(object sender, EventArgs e)
{
this.xWinnerLabel.BackColor = Color.White;
this.xCreditsScrollBar.Visible = true;
this.xWinnerLabel.Text = "This game was made possible with the help of: blah bla blah";
}
答案 0 :(得分:46)
使用TextBox并根据您的需要设置ScrollBars
,MultiLine
和WordWrap
属性,而不是Label。要禁用TextBox的编辑(并因此使其行为类似于标签),请使用ReadOnly属性。
答案 1 :(得分:5)
只读可滚动TextBox控件将更容易使用。
如果您真的想使用标签,可以将标签放在可滚动的Panel控件中,并将标签的AutoSize属性设置为true。
答案 2 :(得分:5)
由于可能有理由不使用文本框(例如,不希望文本可选择和可复制),这是另一个适用于我的解决方案:
将面板放置在您想要标签的位置,将其AutoScroll属性设置为true。然后将标签放在面板中,锚定它并将其AutoSize属性设置为true。如果标签的文本扩展到面板之外,这将使面板提供滚动条。
如果希望文本仅在一个方向上滚动,则可能必须为标签设置MaximumSize(如果只想垂直滚动,则设置最大宽度大小;如果只想水平滚动,则设置最大高度)。 / p>
答案 3 :(得分:4)
如果它不一定是标签,您可以将其设为只读的多行编辑字段。编辑控件将自动滚动。