Используйте функцию CountRows . Например,
=CountRows("MyDataset")
Example : =CountRows("DataSetRisk")
даст вам количество строк в MyDataSet.
Реализация INotifyPropertyChanged, кажется, решение!
#region IPropertyChanged
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
{
OnPropertyChanged(new PropertyChangedEventArgs(propertyName));
}
protected virtual void OnPropertyChanged(PropertyChangedEventArgs e)
{
if (null != PropertyChanged)
{
PropertyChanged(this, e);
}
}
#endregion
Отображение информации работает отлично. С другой стороны, независимо от того, установил ли я Обновление OnValidate или OnValueChange, это никогда не обновляет BindingSource.
При рассмотрении кода я на самом деле не уверен в этом. В Вашем наборе Вы тестируете на пустой указатель и отказ; если данные на самом деле будут содержать пустой указатель (который является тем, что Вы описываете), то Ваше управление будет вне синхронизации. Интересно, если, возможно, что проверка маскирует базовую проблему.
Может быть, вам нужно заставить DataBinding записывать свое значение для каждого элемента управления, значение которого вы устанавливаете таким образом?
Предполагая, что одна привязка данных для текстового поля с именем txtMySetValue:
txtMySetValue. DataBindings [0] .WriteValue ();