我正在嘗試通過 XAML 向自定義集合屬性添加值:<local:OnePageHeaderView> <local:OnePageHeaderView.RightIconViewCollection> <toolkit:IconView Source="one.png"></toolkit:IconView> <toolkit:IconView Source="two.png"></toolkit:IconView> <toolkit:IconView Source="three.png"></toolkit:IconView> </local:OnePageHeaderView.RightIconViewCollection></local:OnePageHeaderView>我確實PropertyChanged像這樣設(shè)置了自定義屬性和事件:public static readonly BindableProperty RightIconViewCollectionProperty = BindableProperty.Create( propertyName: "RightIconViewCollection", returnType: typeof(ObservableCollection<IconView>), declaringType: typeof(OnePageHeaderView), defaultValue: new ObservableCollection<IconView>(), propertyChanged: RightIconViewCollectionPropertyChanged);public ObservableCollection<IconView> RightIconViewCollection{ get { return (ObservableCollection<IconView>)GetValue(RightIconViewCollectionProperty); } set { SetValue(RightIconViewCollectionProperty, value); }}private static void RightIconViewCollectionPropertyChanged(BindableObject bindable, object oldValue, object newValue){ var control = (OnePageHeaderView)bindable; control.RightIconViewCollection = (ObservableCollection<IconView>)newValue;}問題是這RightIconViewCollection始終是我設(shè)置的默認值,無論我嘗試在 XAML 中添加多少個值。我可以確認它IconView按預(yù)期工作,因為我通過在后面的代碼中手動添加 IconViews 做了一些測試用例并且它工作了。為什么它RightIconViewCollection的值總是 defaultValue ( new ObversableCollection()) 而不是我在 XAML 中明確添加的值?
- 1 回答
- 0 關(guān)注
- 193 瀏覽
添加回答
舉報
0/150
提交
取消