0

タイトルはかなり自明です。DataTemplateSelector 内から特定のオブジェクトの既定のテンプレートを読み込む方法を理解することはできません。

私はあなたが尋ねるつもりであることを知っています。なぜこれを行う必要があるのですか?オブジェクトを何かにバインドすると、WPF がそのテンプレートを選択します。

簡単に言えば、返されるすべての DataTemplate がテンプレートの新しいインスタンスであることを確認する必要があります。このテンプレートがバインドされているコントロールは、それを再利用しています。x:Shared="False" を使用しようとしていますが、コントロール自体はリソースを再度取得しようとせず、既に持っているリソースを再利用しているだけです。ただし、DataTemplateSelector を使用すると、新しい UI を要求するたびに SelectTemplate 関数が呼び出されます。したがって、ここで返される DataTemplate が新しいインスタンスであることを確認できれば、すべてがうまくいくはずです。

ただし、デフォルトのテンプレートを使用している限り (x:Key="" 属性を使用しない場合など)。そのリソースを取得する方法がわかりません。

ありがとう。

4

0 に答える 0