Vì vậy, tôi thực sự bối rối ở đây.DataGrid SelectedItem không cập nhật
Tôi đã tạo một DataGrid, ràng buộc mã nguồn của nó theo hai chiều và ràng buộc mục được chọn theo hai cách. Bộ chọn item getter được gọi nhưng setter không bao giờ làm. Tất cả các mảnh dường như ở đây. Tôi đang thiếu gì?
<DataGrid ItemsSource="{Binding Properties ,Mode=TwoWay}"
SelectedItem="{Binding SelectedProperty ,Mode=TwoWay}"
CanUserDeleteRows="False" CanUserAddRows="False" AutoGenerateColumns="False" Background="LightBlue">
<DataGrid.Columns>
<DataGridTextColumn IsReadOnly="True" Header="Address" Binding="{Binding Address}"/>
</DataGrid.Columns>
<DataGrid.RowDetailsTemplate>
<DataTemplate>
<DataGrid ItemsSource="{Binding Units ,Mode=TwoWay}"
SelectedItem="{Binding SelectedUnit, Mode=TwoWay}"
CanUserDeleteRows="False" CanUserAddRows="False" AutoGenerateColumns="False">
DataGrid đầu tiên của tôi hoạt động tốt bao gồm cả mục đã chọn.
Lưới lồng thứ ba và thứ tư tuy nhiên không liên kết với mục đã chọn. Các nguồn mục hoạt động nhưng đó là số
public class PropertyModel : ModelBase
{
private ObservableCollection<UnitModel> _Units;
public ObservableCollection<UnitModel> Units
{
get { return _Units; }
set { _Units = value; }
}
private UnitModel _SelectedUnit;
public UnitModel SelectedUnit
{
get { return _SelectedUnit; }
set { _SelectedUnit = value; OnPropertyChanged("SelectedUnit"); }
}
Không có lỗi biểu hiện ràng buộc hoặc bất kỳ lỗi nào khác được hiển thị trong cửa sổ đầu ra.
tôi bỏ qua vấn đề của tôi bằng cách sử dụng hai 'ItemsControl' cho lưới của tôi và một số cho 'RowHeader' và' ColumnHeader'. Vẫn sẽ được intressted nếu có một cách để làm điều đó với một 'DataGrid' – MadddinTribleD