我有一个树视图和一个按钮。
我希望在树视图中没有选择任何项目时禁用该按钮(IsEnabled = false)(并且我想在选择项目时启用该按钮...)。
我该怎么做????
这是我的Xaml。
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions"
x:Class="WpfApplicationTreeViewTest.MainWindow"
x:Name="Window"
Title="MainWindow"
Width="640" Height="480" WindowStartupLocation="CenterScreen" Margin="40" >
<StackPanel>
<TreeView x:Name="strategyTreeView" Margin="10 40 10 10">
<TreeViewItem Header="Test"></TreeViewItem>
<TreeViewItem Header="Test"></TreeViewItem>
<TreeViewItem Header="Test"></TreeViewItem>
<TreeViewItem Header="Test"></TreeViewItem>
</TreeView>
<Button Name="Panel" Content="Selected" Height="40" Width="100" Margin="10"/>
</StackPanel>
</Window>
Thanxs!
答案 0 :(得分:7)
你可以通过按钮触发这样做:
<StackPanel>
<TreeView x:Name="strategyTreeView" Margin="10 40 10 10">
<TreeViewItem Header="Test"></TreeViewItem>
<TreeViewItem Header="Test"></TreeViewItem>
<TreeViewItem Header="Test"></TreeViewItem>
<TreeViewItem Header="Test"></TreeViewItem>
</TreeView>
<Button Name="Panel" Content="Selected" Height="40" Width="100" Margin="10">
<Button.Style>
<Style TargetType="{x:Type Button}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=strategyTreeView, Path=SelectedItem}" Value="{x:Null}">
<Setter Property="IsEnabled" Value="False"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
</StackPanel>
答案 1 :(得分:-1)
最初你必须在加载后禁用Button,控件将没有选择,使用这个XAML ......
<Button Name="Panel" Content="Selected" Height="40" Width="100" Margin="10" IsEnabled="False"/>
在此之后,您可以处理SelectedItemChanged
的{{1}}并启用或禁用方法中的按钮,如下所示:
XAML:
TreeView
代码背后:
<TreeView x:Name="strategyTreeView" Margin="10 40 10 10" SelectedItemChanged="strategyTreeView_SelectedItemChanged">