diff --git a/BookReader/ViewModels/BookshelfViewModel.cs b/BookReader/ViewModels/BookshelfViewModel.cs index b190fee..10f06f5 100644 --- a/BookReader/ViewModels/BookshelfViewModel.cs +++ b/BookReader/ViewModels/BookshelfViewModel.cs @@ -25,6 +25,16 @@ public partial class BookshelfViewModel : BaseViewModel [ObservableProperty] private string _searchText = string.Empty; + partial void OnSearchTextChanged(string value) + { + // Автоматически выполняем поиск при изменении текста + if (string.IsNullOrWhiteSpace(value)) + { + // Если поле пустое - загружаем все книги + LoadBooksCommand.Execute(null); + } + } + public BookshelfViewModel( IDatabaseService databaseService, IBookParserService bookParserService, @@ -94,8 +104,17 @@ public partial class BookshelfViewModel : BaseViewModel } [RelayCommand] - public async Task SearchAsync() + public async Task SearchAsync(object? parameter) { + // Если параметр пустой или null, используем текущий SearchText + var searchText = parameter?.ToString() ?? SearchText; + + if (string.IsNullOrWhiteSpace(searchText)) + { + // Очищаем поиск и загружаем все книги + SearchText = string.Empty; + } + await LoadBooksAsync(); } diff --git a/BookReader/Views/BookshelfPage.xaml b/BookReader/Views/BookshelfPage.xaml index d77893d..15c132d 100644 --- a/BookReader/Views/BookshelfPage.xaml +++ b/BookReader/Views/BookshelfPage.xaml @@ -34,8 +34,9 @@