Я бы, вероятно, пошел на подход к настройке вашей Grid с вашими заголовками и строками результатов - если вы используете элемент управления Grid layout, то я предполагаю, что вы создаете определения строк для хранения результатов,или просто используя StackPanel во второй строке для хранения результатов, если вы используете специальный элемент управления DataGrid-esque, то это нормально.
Если вы используете элемент управления типа DataGrid, я бы проверилдокументация для того, что вы ищете, может уже быть предоставлена.
В противном случае я бы создал StackPanel для хранения вашего сообщения «Нет результатов поиска» и ItemsControl, который содержит ваши фактические результаты поиска и использования.Данные стиля запускают переключение видимости в зависимости от того, есть результаты или нет.
Вероятно, XAML неверен, потому что я пишу свободно, но он должен проиллюстрировать основную идею:
<Grid x:Name="searchResultsGrid">
<Grid.RowDefinitions>
// Header row definition here
// Results row definition here
</Grid.RowDefinitions>
<Grid x:Name="headers" Grid.Row="0">Headers would go here</Grid>
<Grid x:Name="results" Grid.Row="1">
<StackPanel x:Name="noResults">
<StackPanel.Style>
<Style TargetType="StackPanel">
<Setter Property="Visibility" Value="Collapsed" />
<Style.Triggers>
<DataTrigger Binding="{Binding SearchResultsFound}" Value="False">
<Setter Property="Visibility" Value="Visible" />
</DataTrigger>
<DataTrigger Binding="{Binding SearchResultsFound}" Value="True">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</StackPanel.Style>
</StackPanel>
<ItemsControl x:Name="resultsControl" ItemsSource="{Binding SearchResults}">
<ItemsControl.Style>
<Style TargetType="ItemsControl">
<Setter Property="Visibility" Value="Visible" />
<Style.Triggers>
<DataTrigger Binding="{Binding SearchResultsFound}" Value="False">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
<DataTrigger Binding="{Binding SearchResultsFound}" Value="True">
<Setter Property="Visibility" Value="Visible" />
</DataTrigger>
</Style.Triggers>
</Style>
</ItemsControl.Style>
</ItemsControl>
</Grid>
</Grid>