Я посмотрел и не могу найти то, что ищу. У меня есть среда MVVM. В модели View у меня есть Datatable, доступный по данным из соединения / запроса к базе данных. Я выставил свойство (getter / setter) как «DataView» на основе «TheTable.DefaultView».
У меня есть сетка данных в окне, которая привязывается к просмотру данных ... нет проблем.
<DataGrid AutoGenerateColumns="False"
Name="dataMyData"
ItemsSource="{Binding Path=ViewModelViewProperty,
NotifyOnSourceUpdated=True,
NotifyOnTargetUpdated=True}"
SelectedItem="{Binding Path=JustOneRecordInView, Mode=TwoWay}"
SelectionMode="Single"
SelectionUnit="FullRow"
GridLinesVisibility="Horizontal"
CanUserDeleteRows="False"
CanUserAddRows="False" >
Для "SelectedItem", описанного выше, оно также происходит от свойства, представленного в ViewModel через его (getter / setter).
Теперь моя проблема. Когда я прокручиваю вниз список записей в сетке данных, у меня появляются другие элементы управления текстовым полем, чтобы показать больше данных, чем предоставляет только лист сетки. Я хочу иметь возможность редактировать данные «текущей строки», поэтому у меня есть текстовое поле с таким количеством настроек, сколько я могу придумать, но что-то все еще не в порядке.
<TextBox
Text="{Binding Path=PropertyForCurrentRecord[SpecificColumnInDataViewRow],
Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True,
ValidatesOnExceptions=True,
BindsDirectlyToSource=True,
NotifyOnSourceUpdated=True,
NotifyOnTargetUpdated=True,
NotifyOnValidationError=True}"
Name="textBox1" VerticalAlignment="Top" Width="40" />
Если я прокручиваю хотя и нахожусь в режиме редактирования данных и изменяю значение в текстовом поле, связанном с текущей строкой, И это значение является одним из столбцов, отображаемых в сетке, сама сетка данных НЕ отображается измененное значение. Однако, если я продолжу прокручивать и возвращаться к одной и той же записи, значение в текстовом поле ДА будет отображать измененное значение.
Итак, как я могу сделать так, чтобы источник данных сетки тоже считался обновленным, так как изменился отдельный столбец из конкретной строки и обновилась и сама сетка. Спасибо ...