2010-10-12 409 views
4

我希望能夠向用戶顯示進程更新信息。我想這樣做的方式是通過控制主要的Winform(在尚未確定的過程中)通過文本來告知用戶狀態。隨着更多文本的添加,我希望這個文本能夠滾動(在一個控件中)。C# - 在WinForm中顯示大量文本

達到此目的的最佳方法是什麼?

回答

5

使用多行TextBox,就像這樣:

myTextBox.Multiline = true; 

雖然滾動至底部,像這樣更新:

myTextBox.Text += "My message" + System.Environment.NewLine; 
myTextBox.SelectionStart = myTextBox.Text.Length; 
myTextBox.ScrollToCaret(); 
3

好吧,多行TextBox或RichTextBox將會很好地完成這項工作。使用它的AppendText()方法。

我不能從你的問題中判斷這個信息的價值。一般來說,避免假設用戶對實現細節感興趣,特別是在有很多實現細節時。 ProgressBar幾乎總是最適合的進度指標。也許一個標籤或一個StatusStrip來提供一些上下文。

請注意Control.BeginInvoke()更新控件的成本。