我試圖將包含在字符串中的大約100-500個字的文本顯示爲數據表單的一行的兩列,然後將其設置爲DataGridView
的DataSource
值控制。在datagridview單元格中顯示長文本
現在即使它呈現非常遲緩/滾動需要永遠。
我已經將DefaultStyleMode
設置爲WordWrap = true
,並調整行高來顯示文本。
有沒有其他方法可以加快速度,或者我應該調查在DataGridView
的手機上添加TextBox
?
我試圖將包含在字符串中的大約100-500個字的文本顯示爲數據表單的一行的兩列,然後將其設置爲DataGridView
的DataSource
值控制。在datagridview單元格中顯示長文本
現在即使它呈現非常遲緩/滾動需要永遠。
我已經將DefaultStyleMode
設置爲WordWrap = true
,並調整行高來顯示文本。
有沒有其他方法可以加快速度,或者我應該調查在DataGridView
的手機上添加TextBox
?
如何顯示只有幾個字符,並使其可點擊,所以當用戶點擊它時,整個文本可以彈出顯示?
首先,您必須將原始文本存儲在應用程序的某處。讓我們假設你有文本在數組string[] texts
所有你需要做的是:
DataGridView
控件添加整個文本,而不是你可以在string
類中使用Split
方法執行此操作。示例:
string text = "Oscar Mederos";
string portion = text.Substring(0, 3); //portion will be "Osc"
如果需要,可以在字符串的末尾添加...
。
DataGridView
的事件CellClick
。Suscribe在應用程序中該事件,並且這樣做:
只展示幾個字符,使void DataGridView1_OnCellClick(object sender, DataGridViewCellEventArgs e)
{
int rowClicked = e.RowIndex;
int columnClicked = e.ColumnIndex;
///If the column clicked was the one that has the long texts,
//just find the original text in 'texts' using 'rowClicked' and show the
//message using MessageBox or creating a new Form for that purpose and
//showing it using ShowDialog()
}
奧斯卡,我在我的一個應用程序中做了類似的事情。唯一的區別是,我沒有顯示幾個字符,而是用鉛筆顯示了一個看起來像記事本的圖像。如果該單元格中有文本,我只顯示圖像,因此沒有圖像的單元格表示該單元格中沒有文本,圖像單元格指示該單元格中有文本。我認爲這對用戶來說很好。 – richard 2011-05-03 06:35:51
@RichardDesLonde這也是個好主意。有幾種方法可以做到這一點。這取決於開發人員的想象力。當鼠標懸停時,他可以放一個「手形」光標,等等。 – 2011-05-03 06:41:04
它所點擊所以當它的用戶點擊,可以顯示整個文本在彈出窗口? – 2011-05-03 06:03:55
這是用於Winforms的嗎? – V4Vendetta 2011-05-03 06:05:06
@Oscar Mederos - 我非常喜歡這個主意。是否有任何示例或鏈接可以讓我指出哪些可以說明這一想法?謝謝 @ V4Vendetta。是的,這是Windows窗體。 – HelpThis 2011-05-03 06:12:14