私はフォイルローイングxamlをロードしようとしています:
<HierarchicalDataTemplate ItemsSource="{Binding Items}">
<CheckBox Checked="CheckBox_Checked" Tag="{Binding Champ1}" Unchecked="CheckBox_Unchecked">
<CheckBox.Template>
<ControlTemplate>
<TextBlock Background="{Binding Path=Background, RelativeSource={RelativeSource AncestorType=CheckBox}}" Text="{Binding Champ1}" />
</ControlTemplate>
</CheckBox.Template>
</CheckBox>
</HierarchicalDataTemplate>
私のツリービューのコンストラクターでこれを使用します:
string template = "<HierarchicalDataTemplate ItemsSource=\"{Binding Items}\">" +
"<CheckBox Checked=\"CheckBox_Checked\"" +
" Tag=\"{Binding Champ1}\"" +
" Unchecked=\"CheckBox_Unchecked\">" +
"<CheckBox.Template>" +
"<ControlTemplate>" +
"<TextBlock Background=\"{Binding Path=Background," +
"RelativeSource={RelativeSource AncestorType=CheckBox}}\"" +
"Text=\"{Binding Champ1}\" />" +
"</ControlTemplate>" +
"</CheckBox.Template>" +
"</CheckBox>" +
" </HierarchicalDataTemplate>";
this.ItemTemplate = (HierarchicalDataTemplate)XamlReader.Parse(template);
次のエラーが表示されます。
'Impossible de créer le type inconnu 'HierarchicalDataTemplate'.' numéro de ligne '1' et position de ligne '2'.
(私のマシンはフランス語で構成されています。このメッセージは、「不明なタイプの HierarchicalDataTemplate を作成できません」という意味です)。
誰かが理由を知っていますか?xaml スニペットは、xaml ファイルに直接記述すると完全に機能します。
ありがとう !
編集
シンプルなバージョンでテストしました:
string template = "<HierarchicalDataTemplate ItemsSource=\"{Binding Items}\">" +
"<TextBox Text=\"Test\"/>"+
" </HierarchicalDataTemplate>";
そして問題は同じです。
編集2
問題はより広く、「HierarchicalDataTemplate」とは無関係のようです
string test = "<TextBox Text=\"Test\" />";
var ret = XamlReader.Parse(test);
同じエラーが発生します...