在帶有vanilla文本框的窗體中multiline == false
發生預期結果 將Text屬性設置爲「」 ,或者string.Empty,或者調用Clear()。但是,一旦 ShowDialog()已在窗體上調用,則會出現下面列出的行爲。還要注意,奇怪的效果是相當直接的。如果定義並使用了Load事件處理函數,則一旦調用該函數(以響應ShowDialog()被調用),下面顯示的原因不明行爲就爲true。在Clear()或簡單設置爲string.Empty時出現意外的行爲,在ShowDialog()調用後
textBox.Text = "fillWithSomething";
調試器顯示文本是: 「fillWithSomething」
textBox.Text = "";
調試器顯示的文本是:與textBox.Text.Length == 2
textBox.Text = "fillWithNew";
調試器顯示了兩個不可打印的字符文本爲:「fillWithNew」
textBox.Clear();
調試器再次顯示文字是兩個不可打印的字符與長度== 2
這是一個較大的表格客戶機應用程序的所有部分。我嘗試一個簡單的測試 (均爲3.5 & 4 .Net框架)和同樣的行爲。
任何建議,什麼可能破壞什麼,似乎應該是一個真正 直盼着操作?在其他地方我找不到這種類型的問題。
我可能是錯在這裏,但'.Length'不是一個TextBox的屬性。 http://msdn.microsoft.com/en-us/library/system.windows.forms.textbox.aspx你確定它不是一個擴展方法或什麼? – Brandon 2012-01-17 22:22:02
將textBox.Text.ToCharArray()放入調試器表達式中,並告訴我們您看到了什麼。 – 2012-01-17 22:23:45
什麼意思長度? – pistipanko 2012-01-17 22:32:33