我試圖讓textbox
動態更改其高度,同時保持固定的width
。當text
太長而且太過於第二行時,不是resize
。c#動態更改textboxwithfont高度
textbox
在添加完所有文本後確定大小。
下面是我目前使用的。
txtwfSupportNotes[i].Multiline = true;
txtwfSupportNotes[i].Text += ds.Tables[0].Rows[i]["Notes"].ToString()
+ "\r\n\r\n";
Size txtSize = TextRenderer.MeasureText(txtwfSupportNotes[i]
.Text, txtwfSupportNotes[i].Font);
txtwfSupportNotes[i].Width = 355;
txtwfSupportNotes[i].Height = txtSize.Height+5;
txtwfSupportNotes[i].BorderStyle = BorderStyle.FixedSingle;
編輯:有一個修復,見下文。
Size txtSize = TextRenderer.MeasureText(txtwfSupportNotes[i].Text, txtwfSupportNotes[i].Font, txtwfSupportNotes[i].ClientRectangle.Size, TextFormatFlags.WordBreak);
txtwfSupportNotes[i].Height = txtSize.Height+5;
你是否在'TextChanged'事件中調用上述內容?對我來說看起來很好。 – James
文本只設置一次,並且在任何大小設置完成之前設置,我將編輯原始文章以顯示示例。 – Joeeigel
我認爲你正在更新作爲循環的一部分?如果它應該是固定的,你不應該每次都設置寬度。 – James