ページにユーザー コントロールがある WinRt アプリを作成しており、Caliburn Micro で MVVM を使用しています。ユーザーコントロールには、ビューモデルのコレクションにバインドしている依存関係プロパティがありますが、少なくともシミュレーターの解像度を変更するまで、バインドは機能しません。デバッグ モードに入ると、ユーザー コントロールのデータ コンテキストは null ですが、解像度を変更して "SizeChanged" イベントでブレークポイントに到達すると、ユーザー コントロールが適切にバインドされていることがわかります。ページが読み込まれた瞬間にバインドする必要があるため、この遅延の原因はわかりませんが、そうではありません。コードは次のようなものです。
MyPage.xaml
<MyControl Users="{Binding MyUsersCollection, Mode=TwoWay}"></MyControl>
MyControl.xaml.cs
public ObservableCollection<User> Users
{
get { return (ObservableCollection<User>)GetValue(UsersProperty); }
set
{
SetValue(UsersProperty, value);
LoadInfo();
}
}
public static readonly DependencyProperty UsersProperty =
DependencyProperty.Register("Users", typeof(ObservableCollection<User>), typeof(MojoMap), new PropertyMetadata(new ObservableCollection<User>()));
ここで何が問題なのかを理解するのを手伝ってもらえますか? ありがとうございました!