标签上的滚动条

我需要能够在标签上滚动文本我正在使用这个用于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"; } 

而不是Label,使用TextBox并根据您的需要设置ScrollBarsMultiLineWordWrap属性。 要禁用TextBox的编辑(并因此使其行为类似于标签),请使用ReadOnly属性。

如果它不一定是标签,则可以将其设置为只读的多行编辑字段。 编辑控件将自动滚动。

只读可滚动TextBox控件将更容易使用。

如果您确实想要使用标签,可以将标签放在可滚动的Panel控件中,并将标签的AutoSize属性设置为true。

由于可能有理由不使用文本框(例如,不希望文本可选择和可复制),这是另一个适用于我的解决方案:

将面板放在您想要标签的位置,将其AutoScroll属性设置为true。 然后将标签放在面板中,锚定它并将其AutoSize属性设置为true。 如果标签的文本延伸到面板之外,这将使面板提供滚动条。

如果希望文本仅在一个方向上滚动(如果只想垂直滚动则设置最大宽度大小,或者如果只想水平滚动则设置最大高度),则可能必须为标签设置MaximumSize。