У меня есть приложение winforms с числовым полем на форме.Это начинается с нуля, затем, если я установлю его на номер, поменяю фокус, затем снова сниму флажок, текстовое поле вернется к ранее введенному числу.Если я изменю номер, например.с 4 до 5 обновляется корректно, но я хочу, чтобы пользователь мог очистить введенное.
Вот пример кода, демонстрирующий это поведение:
public partial class Form1 : Form
{
DataTable table = new DataTable("TableName");
public Form1()
{
DataColumn column = new DataColumn("NumericColumnName", typeof(Double));
column.AllowDBNull = true;
table.Columns.Add(column);
object[] rowData = new object[1];
rowData[0] = DBNull.Value;
table.Rows.Add(rowData);
InitializeComponent();
BindingSource bindingSource = new BindingSource();
bindingSource.DataSource = table;
Binding binding = new Binding("Text", bindingSource, "NumericColumnName");
textBox1.DataBindings.Add(binding);
}
}
Этов совершенно новом проекте форм .net 3.5 в Visual Studio 2008. Я добавил в форму два текстовых поля.
Мое реальное приложение генерирует набор данных по-разному, но ведет себя одинаково.Делайте привязки к числовым столбцам таблицы данных, допускают пустые значения.