是否有任何事件表明所有依赖属性都已加载?

时间:2014-03-03 14:31:52

标签: c# silverlight binding user-controls

我有一个带有三个依赖属性的silverlight用户控件。所有属性都已成功绑定,并且它们具有正确的值。这些属性的值在父控件中异步加载,因此我不知道属性绑定的顺序。我需要在加载控件的所有属性时加载一些实体。有没有优雅的解决方案来解决这个问题。我不想使用hack创建私有字段或类似的东西。在所有绑定之前触发Load事件,因为我说我的属性是异步加载的。

以下是一个例子:

<namespace:MyControl Prop1="{Binding ParentProp1}" Prop2="{Binding ParentProp2}" Prop3="{Binding ParentProp3}" />

1 个答案:

答案 0 :(得分:0)

创建您自己的事件,并在初始化所有属性时调用它 您可以通过在控件中实现INotifyPropertyChanged然后订阅OnPropertyChanged事件并检查是否已初始化所有属性来确定所有属性都已正确初始化。在那里,您可以触发您的事件,告诉任何订阅者初始化已完成。

Implement INotifyPropertyChanged
C# Events Guidelines

相关问题