Представление списка форм Xamarin в перекрывающемся макете StackLayout над ним - PullRequest
0 голосов
/ 27 августа 2018

У меня есть ListView, который мне нужно сложить под другим горизонтальным макетом стека. Неважно, что я делаю, похоже, что ListView перекрывает все, что находится над ним. Мне нужно, чтобы это не имело такого поведения и фактически показывало макет выше. Я просто не знаю как, и любая помощь будет оценена.

Я также попытался поместить оба в сетку, и мне удалось освободить место наверху, но ни одна из меток теста не появилась, все же.

enter image description here

Как видно выше, ListView просто перекрывает то, что находится над ним (макет стека с метками), а также отображается с двумя записями над Аароном за кадром вверху.

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
             x:Class="engME.YourFullNamesListPage">

    <StackLayout>
        <StackLayout Orientation="Horizontal">
            <Label Text="Test 1" HorizontalTextAlignment="Center"/>
            <Label Text="Test 2" HorizontalTextAlignment="Center"/>
            <Label Text="Test 3" HorizontalTextAlignment="Center"/>
            <Label Text="Test 4" HorizontalTextAlignment="Center"/>
        </StackLayout>
        <StackLayout Orientation="Vertical" VerticalOptions="Fill" HorizontalOptions="FillAndExpand">
            <ListView x:Name="FullNamesList" VerticalOptions="FillAndExpand" RowHeight="50">
                <ListView.ItemTemplate>
                    <DataTemplate>
                        <ViewCell>
                            <Grid>
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="*"/>
                                    <ColumnDefinition Width="1.1*"/>
                                    <ColumnDefinition Width=".3*"/>
                                </Grid.ColumnDefinitions>
                                <Label FontSize="Large" 
                                       FontAttributes="Bold" 
                                       HorizontalTextAlignment="Start"
                                       Margin="20,0,0,0"
                                       VerticalTextAlignment="Center"
                                       Grid.Row="0"
                                       Grid.Column="0">
                                    <Label.Triggers>
                                        <DataTrigger TargetType="Label" Binding="{Binding Gender}" Value="F">
                                            <Setter Property="Text" Value="{Binding Name}"/>
                                            <Setter Property="TextColor" Value="#cc0066"/>
                                        </DataTrigger>
                                        <DataTrigger TargetType="Label" Binding="{Binding Gender}" Value="M">
                                            <Setter Property="Text" Value="{Binding Name}"/>
                                            <Setter Property="TextColor" Value="#007acc"/>
                                        </DataTrigger>
                                        <DataTrigger TargetType="Label" Binding="{Binding Gender}" Value="A">
                                            <Setter Property="Text" Value="{Binding Name}"/>
                                            <Setter Property="TextColor" Value="#00994d"/>
                                        </DataTrigger>
                                    </Label.Triggers>
                                </Label>
                                <Label Text="{Binding ShortMeaning}"
                                       FontSize="Small"
                                       TextColor="Gray"
                                       VerticalTextAlignment="Center"
                                       Grid.Row="0"
                                       Grid.Column="1">
                                </Label>
                                <Image Source="favorite.png"
                                       Grid.Row="0"
                                       Grid.Column="2"
                                       Scale=".7">
                                </Image>
                            </Grid>
                        </ViewCell>
                    </DataTemplate>
                </ListView.ItemTemplate>    
            </ListView>
        </StackLayout>
    </StackLayout>
</ContentPage>

1 Ответ

0 голосов
/ 28 августа 2018

Это StackLayout, внутри которого есть ListView, он вам не нужен. Удалите его и посмотрите, что произойдет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...