Added Control-F Search

This commit is contained in:
2023-02-25 15:45:37 +01:00
parent e8c28e7594
commit 6583f1c791
2 changed files with 19 additions and 7 deletions

View File

@ -30,11 +30,11 @@
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBox x:Name="SearchInput" TextChanged="SearchInput_TextChanged" <TextBox x:Name="SearchInput" TextChanged="SearchInput_TextChanged"
Grid.ColumnSpan="3" Margin="10,10,10,10" VerticalAlignment="Top"/> Grid.ColumnSpan="3" Margin="10,7,10,0" VerticalAlignment="Top" FontSize="14" Padding="2,2,2,2"/>
<DataGrid x:Name="MemberList" AutoGenerateColumns="False" HeadersVisibility="Column" IsReadOnly="True" GridLinesVisibility="None" SelectionMode="Single" <DataGrid x:Name="MemberList" AutoGenerateColumns="False" HeadersVisibility="Column" IsReadOnly="True" GridLinesVisibility="None" SelectionMode="Single"
CanUserDeleteRows="False" CanUserResizeRows="False" CanUserAddRows="False" CanUserDeleteRows="False" CanUserResizeRows="False" CanUserAddRows="False"
SelectionChanged="MemberList_SelectionChanged" SelectionChanged="MemberList_SelectionChanged"
Margin="10,33,10,47" FontSize="14" Grid.ColumnSpan="3"> Margin="10,39,10,47" FontSize="14" Grid.ColumnSpan="3">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="MgNr." Binding="{Binding MgNr}" Width="50"/> <DataGridTextColumn Header="MgNr." Binding="{Binding MgNr}" Width="50"/>
<DataGridTextColumn Header="Nachname" Binding="{Binding FamilyName}" Width="100"/> <DataGridTextColumn Header="Nachname" Binding="{Binding FamilyName}" Width="100"/>
@ -64,11 +64,11 @@
<ColumnDefinition Width="149*"/> <ColumnDefinition Width="149*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBox x:Name="MgNrInput" IsReadOnly="True" <TextBox x:Name="MgNrInput" IsReadOnly="True"
HorizontalAlignment="Left" Margin="10,26,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="183" FontSize="14" Grid.ColumnSpan="2"/> HorizontalAlignment="Left" Margin="10,26,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="183" Grid.ColumnSpan="2" FontSize="14"/>
<TextBox x:Name="GivenNameInput" IsReadOnly="True" <TextBox x:Name="GivenNameInput" IsReadOnly="True"
HorizontalAlignment="Left" Margin="10,52,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="183" Grid.ColumnSpan="2"/> HorizontalAlignment="Left" Margin="10,52,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="183" Grid.ColumnSpan="2" FontSize="14"/>
<TextBox x:Name="FamilyNameInput" IsReadOnly="True" <TextBox x:Name="FamilyNameInput" IsReadOnly="True"
HorizontalAlignment="Left" Margin="10,75,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="183" Grid.ColumnSpan="2"/> HorizontalAlignment="Left" Margin="10,78,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="183" Grid.ColumnSpan="2" FontSize="14"/>
</Grid> </Grid>
</GroupBox> </GroupBox>
<GroupBox Header="Anschrift" Grid.Column="1" Grid.Row="1" Margin="5,5,5,5"> <GroupBox Header="Anschrift" Grid.Column="1" Grid.Row="1" Margin="5,5,5,5">
@ -91,13 +91,13 @@
<GroupBox Header="Betrieb" Grid.Column="2" Grid.Row="0" Grid.RowSpan="2" Margin="5,5,5,5"> <GroupBox Header="Betrieb" Grid.Column="2" Grid.Row="0" Grid.RowSpan="2" Margin="5,5,5,5">
<Grid> <Grid>
<ComboBox x:Name="DefaultKgInput" ItemTemplate="{StaticResource KgTemplate}" IsEnabled="False" <ComboBox x:Name="DefaultKgInput" ItemTemplate="{StaticResource KgTemplate}" IsEnabled="False"
HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="120" Grid.ColumnSpan="2"/> HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="120" Grid.ColumnSpan="2" FontSize="14"/>
</Grid> </Grid>
</GroupBox> </GroupBox>
<GroupBox Header="Genossenschaft" Grid.Column="2" Grid.Row="2" Grid.RowSpan="2" Margin="5,5,5,10"> <GroupBox Header="Genossenschaft" Grid.Column="2" Grid.Row="2" Grid.RowSpan="2" Margin="5,5,5,10">
<Grid> <Grid>
<ComboBox x:Name="BranchInput" ItemTemplate="{StaticResource BranchTemplate}" IsEnabled="False" <ComboBox x:Name="BranchInput" ItemTemplate="{StaticResource BranchTemplate}" IsEnabled="False"
HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="120" Grid.ColumnSpan="2"/> HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="120" Grid.ColumnSpan="2" FontSize="14"/>
</Grid> </Grid>
</GroupBox> </GroupBox>
</Grid> </Grid>

View File

@ -26,6 +26,7 @@ namespace WGneu.Windows
private bool isEditing = false; private bool isEditing = false;
private bool isCreating = false; private bool isCreating = false;
private List<string> textFilter = new(); private List<string> textFilter = new();
private static RoutedCommand controlF = new RoutedCommand();
private readonly WgContext context = new(); private readonly WgContext context = new();
public MemberListWindow() public MemberListWindow()
@ -38,6 +39,8 @@ namespace WGneu.Windows
RefreshMemberList(); RefreshMemberList();
BranchInput.ItemsSource = context.Branches.OrderBy(b => b.Name).ToList(); BranchInput.ItemsSource = context.Branches.OrderBy(b => b.Name).ToList();
DefaultKgInput.ItemsSource = context.WbKgs.Select(k => k.Kg).OrderBy(k => k.Name).ToList(); DefaultKgInput.ItemsSource = context.WbKgs.Select(k => k.Kg).OrderBy(k => k.Name).ToList();
controlF.InputGestures.Add(new KeyGesture(Key.F, ModifierKeys.Control));
CommandBindings.Add(new CommandBinding(controlF, FocusSearchInput));
} }
protected override void OnClosing(CancelEventArgs e) protected override void OnClosing(CancelEventArgs e)
@ -233,6 +236,15 @@ namespace WGneu.Windows
RefreshMemberList(); RefreshMemberList();
} }
private void FocusSearchInput(object sender, RoutedEventArgs e)
{
if (!isEditing)
{
SearchInput.Focus();
SearchInput.SelectAll();
}
}
private int NextMgNr() private int NextMgNr()
{ {
int c = context.Members.Select(m => m.MgNr).Min(); int c = context.Members.Select(m => m.MgNr).Min();