1.如何将Checkbox的值与一个bool变量绑定?
好像与别的控件绑定不同,也Google了一下,有这篇:http://www.programbbs.com/doc/4455.htm,照做之后还是没用。
2.如何将HierarchicalDataTemplate应用到多个控件中?
如果是DataTemplate,很容易,指定Key就行了:
<DataTemplate x:Key="ABCTemplate" DataType="{x:Type local:ABC}">
<TextBlock Text="{Binding Path=Name}" />
</DataTemplate>
<StackPanel>
<TreeView ItemsSource="{Binding }" ItemTemplate="{StaticResource ABCTemplate}"/>
<TreeView ItemsSource="{Binding }" ItemTemplate="{StaticResource ABCTemplate}"/>
</StackPanel>
<TreeView ItemsSource="{Binding }" ItemTemplate="{StaticResource ProfileTemplate}">
<TreeView.Resources>
<HierarchicalDataTemplate x:Key="ProfileTemplate" DataType="{x:Type local:Profile}"
ItemsSource="{Binding Path=abc}">
<TextBlock Text="{Binding Path=Name}" />
</HierarchicalDataTemplate>
<DataTemplate x:Key="ABCTemplate" DataType="{x:Type local:ABC}">
<TextBlock Text="{Binding Path=Name}" /></DataTemplate>
</TreeView.Resources>
<StackPanel>
<StackPanel.Resources>
<HierarchicalDataTemplate x:Key="ProfileTemplate" DataType="{x:Type local:Profile}"
ItemsSource="{Binding Path=abc}">
<TextBlock Text="{Binding Path=Name}" />
</HierarchicalDataTemplate>
<DataTemplate x:Key="ABCTemplate" DataType="{x:Type local:ABC}">
<TextBlock Text="{Binding Path=Name}" /></DataTemplate>
</StackPanel.Resources>
<TreeView ItemsSource="{Binding }" ItemTemplate="{StaticResource ProfileTemplate}"/>
<TreeView ItemsSource="{Binding }" ItemTemplate="{StaticResource ProfileTemplate}"/>
</StackPanel>
不知道有没有什么好办法。
我觉得问题出在这里:你定义的Bool变量的属性不是依赖项属性,这样绑定是没用的。XAML绑定的首要条件就是绑定的属性要是依赖项属性。