0

私は彼のコードビハインドファイルにasUserControlを持つ を持っています。このコントロールは( ) の一部として使用されます。ObservableCollectionDPTabControlTabItem

public static readonly DependencyProperty OrderListProperty =
    DependencyProperty.Register("OrderList", typeof(ObservableCollection<Order>), typeof(OrderHistoryControl), new UIPropertyMetadata(new ObservableCollection<Order>()));

public ObservableCollection<Order> OrderList
{
  get { return (ObservableCollection<Order>)GetValue(OrderListProperty); }
  set { SetValue(OrderListProperty, value); }
}

今、私TabControl ViewModelは同じタイプのDP.

public static readonly DependencyProperty OrdersProperty =
       DependencyProperty.Register("Orders", typeof(ObservableCollection<Order>), typeof(AccountViewModel), new UIPropertyMetadata(new ObservableCollection<Order>()));

public ObservableCollection<Order> Orders
{
  get { return (ObservableCollection<Order>)GetValue(OrdersProperty); }
  set { SetValue(OrdersProperty, value); }
}

XAMLのプロパティはTabControlのプロパティにバインドされます。OrderListUserControlOrdersTabControl Viewmodel

<Grid>
    <my:OrderHistoryControl x:Name="orderHistoryControl"
                              OrderList="{Binding Orders, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                              ExpanderOrderDetailsHeader="TEST TEST" />
</Grid>

ただし、ObservableCollection Orders( にTabControl ViewModel) を入力するObservableCollection OrderListと、UserControl更新されません。PropertyChangedCallbackも解雇されていません。

ユーザーコントロールに他のコントロールがいくつかあり、それらのテキストフィールドを を介して変更すると、正常に機能しTabControl ViewModelます。したがって、 2 間のバインディングに問題があることはわかっていObservableCollectionます。何か案が?

4

0 に答える 0