Показывать текст в ListView вместо коллекции - PullRequest
1 голос
/ 14 февраля 2011

Я использую ListView с представлением GridView для отображения результатов поиска. Я бы хотел отобразить информационное сообщение (что-то вроде «Элементы не найдены») в середине ListView в случае, когда нет элементов для отображения. Как я могу это сделать?

1 Ответ

1 голос
/ 14 февраля 2011

Вы можете изменить шаблон ListView с помощью триггера в стиле, когда в ListView нет элементов, например:

    <ListView Name="List" 
              DockPanel.Dock="Top"
              ItemsSource="{Binding Items}">
        <ListView.View>
            <GridView>
                <GridView.Columns>
                    <GridViewColumn Width="70" Header="Serial" DisplayMemberBinding="{Binding Path=Serial}" />
                </GridView.Columns>
            </GridView>
        </ListView.View>
        <ListView.Style>
            <Style TargetType="ListView">
                <Style.Triggers>
                    <Trigger Property="HasItems"
                             Value="False">
                        <Setter Property="Template">
                            <Setter.Value>
                                <ControlTemplate TargetType="ListView">
                                    <StackPanel>
                                        <ListView>
                                            <ListView.View>
                                                <GridView>
                                                    <GridView.Columns>
                                                        <GridViewColumn Width="70" Header="Serial" DisplayMemberBinding="{Binding Path=Serial}" />
                                                    </GridView.Columns>
                                                </GridView>
                                            </ListView.View>
                                        </ListView>
                                        <TextBlock Text="No items..."/>
                                    </StackPanel>
                                </ControlTemplate>
                            </Setter.Value>
                        </Setter>
                    </Trigger>
                </Style.Triggers>
            </Style>
        </ListView.Style>
    </ListView>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...