增加按照名字搜索

This commit is contained in:
lanyi 2021-10-09 12:13:44 +02:00
parent 79d9bf4cba
commit 1f5f1c8e6c
2 changed files with 15 additions and 9 deletions

View File

@ -10,10 +10,10 @@
<Grid> <Grid>
<TextBox x:Name="_ipField" HorizontalAlignment="Left" Height="16" Margin="45,27,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="155" TextChanged="OnIPFieldChanged" /> <TextBox x:Name="_ipField" HorizontalAlignment="Left" Height="16" Margin="45,27,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="155" TextChanged="OnIPFieldChanged" />
<TextBlock x:Name="textBlock" HorizontalAlignment="Left" Margin="29,28,0,0" TextWrapping="Wrap" Text="IP" VerticalAlignment="Top"/> <TextBlock x:Name="textBlock" HorizontalAlignment="Left" Margin="29,28,0,0" TextWrapping="Wrap" Text="IP" VerticalAlignment="Top"/>
<TextBox x:Name="_idField" Height="16" Margin="294,27,92,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" /> <TextBox x:Name="_idField" Height="16" Margin="294,27,92,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" TextChanged="OnIPFieldChanged" />
<TextBlock x:Name="textBlock1" HorizontalAlignment="Left" Margin="205,28,0,0" TextWrapping="Wrap" Text="玩家名称 / 说明" VerticalAlignment="Top"/> <TextBlock x:Name="textBlock1" HorizontalAlignment="Left" Margin="205,28,0,0" TextWrapping="Wrap" Text="玩家名称 / 说明" VerticalAlignment="Top"/>
<Button x:Name="_setIPButton" Content="上传" Margin="705,26,12,0" VerticalAlignment="Top" Click="OnClick"/> <Button x:Name="_setIPButton" Content="上传" Margin="705,26,12,0" VerticalAlignment="Top" Click="OnClick"/>
<DataGrid x:Name="_dataGrid" Margin="20,60,12,19"> <DataGrid x:Name="_dataGrid" Margin="20,60,12,19" MouseDoubleClick="DataGrid_MouseDoubleClick" IsReadOnly="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="IP" Binding="{Binding Path=IPString}"/> <DataGridTextColumn Header="IP" Binding="{Binding Path=IPString}"/>
<DataGridTextColumn Header="玩家名称 / 说明" Binding="{Binding Path=ID}"/> <DataGridTextColumn Header="玩家名称 / 说明" Binding="{Binding Path=ID}"/>

View File

@ -47,9 +47,12 @@ namespace AnotherReplayReader
Dispatcher.Invoke(() => _setIPButton.IsEnabled = true); Dispatcher.Invoke(() => _setIPButton.IsEnabled = true);
} }
private void Display(string filter = "") private void Display(string filter = "", string nameFilter = "")
{ {
var newList = _identity.AsSortedList().Where(x => x.IPString.StartsWith(filter)); var newList = _identity
.AsSortedList()
.Where(x => x.IPString.StartsWith(filter) && x.ID.StartsWith(nameFilter, StringComparison.CurrentCultureIgnoreCase))
.ToArray();
Dispatcher.Invoke(() => Dispatcher.Invoke(() =>
{ {
_dataGrid.Items.Clear(); _dataGrid.Items.Clear();
@ -118,11 +121,14 @@ namespace AnotherReplayReader
private async void OnIPFieldChanged(object sender, System.Windows.Controls.TextChangedEventArgs e) private async void OnIPFieldChanged(object sender, System.Windows.Controls.TextChangedEventArgs e)
{ {
await Task.Run(() => var ipText = _ipField.Text;
var idText = _idField.Text;
await Task.Run(() => Display(ipText, idText));
}
private void DataGrid_MouseDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e)
{ {
var fieldText = Dispatcher.Invoke(() => _ipField.Text);
Display(fieldText);
});
} }
} }
} }