WinRT XAML を使用しています。
B依存関係プロパティを持つカスタム コントロールがItemsあり、そのコントロールは別のコントロールのテンプレートにあります。PropertMetadata依存関係プロパティは、型を使用して新しい空のコレクションに初期化されます。データにバインドされることはありません - 覚えておいてください。
ページに入ると、コントロールは別のカスタム コントロールのテンプレートの一部としてインスタンス化されますA。のコンストラクターのブレークポイントから、Bの値を確認するとItems、項目が 0 個含まれています。
他のアクティビティの一部として、データを挿入するA呼び出しを「手動で」制御します。B.Items.Add()データバインディングはありません。
逆方向に移動してからクリックしてページに再度移動すると、コンストラクターが再び起動されますが、今回Itemsはまだ追加された値が残っていますA。それはその価値を保持します。
そのため、コントロールがアンロードおよびロードされても (イベントを確認できます)、コントロールと依存関係プロパティは再初期化されません。
これは正しいです?