私は彼のコードビハインドファイルにasUserControl
を持つ を持っています。このコントロールは( ) の一部として使用されます。ObservableCollection
DP
TabControl
TabItem
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
のプロパティにバインドされます。OrderList
UserControl
Orders
TabControl 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
ます。何か案が?