В форме с ванильным текстовым полем, где multiline == false
, ожидаемые результаты
при установке для свойства Text значения "", или string.Empty, или вызова Clear (). Однако однажды
ShowDialog () был вызван в форме, поведение, описанное ниже, имеет место. Также обратите внимание, что странный эффект довольно немедленный. Если определен и используется обработчик события Load, как только он вызывается (в ответ на вызываемый ShowDialog ()), необъяснимое поведение, показанное ниже, имеет значение true.
textBox.Text = "fillWithSomething";
Отладчик показывает, что текст будет: "fillWithSomething"
textBox.Text = "";
отладчик показывает текст в виде: два непечатаемых символа с textBox.Text.Length == 2
textBox.Text = "fillWithNew";
отладчик показывает, что текст будет: "fillWithNew"
textBox.Clear();
Отладчик снова показывает текст как два непечатаемых символа с длиной == 2
Это все часть более крупного клиентского приложения Form. Я попробовал простой тест
(3.5 и 4 .Net Framework) и то же поведение.
Любые предложения относительно того, что может повредить тому, что, по-видимому, должно быть действительно
прямолинейная операция? Я не нахожу ссылок на этот тип проблемы в другом месте.