Ich nutze ein WPF DataGrid mit Gruppierten Items.
Die Items haben einen Expander. Das ganze befindet sich in einem AvalonDock Fenster. Wenn nun das Fenster mit dem Datagrid nicht den Focus hat, muss man 2 mal auf den Expander klicken, das er sich ausklappt.
In einem andern Fenster habe Ich einen TreeView, auf desen Expander muss Ich jedoch nur einmal klicken, auch wenn das Fenster nicht den Focus hat!
cSharp Projekte : https://github.com/jogibear9988
Hallo jogibear9988,
kannst du ein wenig Beispielcode posten? Das, was du uns veruscht zu beschrieben, ist sehr oberflächlich. Ich denke, dass es an den Focus Scope liegt. Versuchs mal hiermit.
zero_x
zero_x | <span style="font-size: 10;">my</span><span style="font-size: 10;">CSharp</span><span style="font-size: 10;">.de</span> - gemeinsam mehr erreichen
Für längere Zeit inaktiv.
Habs mal in einem Bild angehängt:
Wenn man auf das Dreieck im Linken Kreis klickt, klappt der Treeview auf egal ob das Fenster ProjectTree den Focus hat oder nicht.
Beim Rechten Kreis klappt die Gruppe nur aus wenn das Fenster Bausteine den Focus hat!
Von welchem Fenster soll Ich den nun Source einstellen?
Hab mal den Quellcode vom DataGrid.Goupstyle angehängt!
<DataGrid.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Path=Name}" />
</StackPanel>
</DataTemplate>
</GroupStyle.HeaderTemplate>
<GroupStyle.ContainerStyle>
<Style TargetType="{x:Type GroupItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<Expander>
<Expander.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=Name}" />
<TextBlock Text=" ("/>
<TextBlock Text="{Binding Path=ItemCount}"/>
<TextBlock Text=" Items)"/>
</StackPanel>
</Expander.Header>
<ItemsPresenter />
</Expander>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</GroupStyle.ContainerStyle>
</GroupStyle>
</DataGrid.GroupStyle>
cSharp Projekte : https://github.com/jogibear9988