TreeViewItem矢印(ビュー上)をマウスクリックした後、treeviewcollapsイベントを停止するにはどうすればよいですか?ツリービューを常に拡大して表示する必要があります。
質問する
2564 次
3 に答える
4
XAML で Collapsed イベントを設定できます。
<TreeView
Name="myTreeView"
ItemsSource="{Binding dataSource}">
<TreeView.ItemContainerStyle>
<Style TargetType="TreeViewItem">
<Setter Property="IsExpanded" Value="True" />
<Style.Triggers>
<EventTrigger RoutedEvent="Collapsed">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<BooleanAnimationUsingKeyFrames
Duration="0"
Storyboard.TargetProperty="(TreeViewItem.IsExpanded)">
<DiscreteBooleanKeyFrame KeyTime="0" Value="True" />
</BooleanAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</Style.Triggers>
</Style>
</TreeView.ItemContainerStyle>
</TreeView>
于 2013-08-14T20:53:40.257 に答える
1
TreeViewItem の Collapsed イベントを次のように設定できます。
private void TreeViewItem_Collapsed(object sender, RoutedEventArgs e)
{
(sender as TreeViewItem).IsExpanded = true;
}
折りたたむのを防ぐわけではありませんが、折りたたむたびに自動的に展開されます。
于 2012-05-09T14:33:59.007 に答える
0
矢印(および折りたたみ可能な領域)さえも持たないように再テンプレート化してください。TreeViewItems
例えば
<Style TargetType="TreeViewItem">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TreeViewItem">
<StackPanel>
<ContentPresenter ContentSource="Header"/>
<ItemsPresenter Margin="20,0,0,0"/>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
(これは最低限のものです。必要に応じて、現在の選択を表示するトリガーが必要になります)
于 2012-05-09T14:11:15.977 に答える