Две кнопки в макете стека, только первая работает - PullRequest
0 голосов
/ 09 апреля 2019

На моей странице XAML у меня есть вложенные макеты стека, и в конечном гнезде у меня есть две кнопки.Кликнет только один из них (первый).Я сделал это очень просто.Только цвет отличается.Когда я поставлю красный сверху, он щелкнет.Когда я положу зеленый сверху, он щелкнет.Почему оба не щелкают, почему только первый?Мне нужно нажать обе кнопки.

        <StackLayout Orientation="Horizontal" VerticalOptions="Center" HorizontalOptions= "CenterAndExpand" HeightRequest="75" IsVisible="{Binding IsUpcomingTrip}">
            <StackLayout Orientation="Vertical" HorizontalOptions= "CenterAndExpand">
                <StackLayout Orientation="Horizontal" VerticalOptions="Start" HorizontalOptions= "FillAndExpand" HeightRequest="25">
                </StackLayout>
                <Button x:Name="btnCancelTrip1" Text="CANCEL TRIP" TextColor="WhiteSmoke" BackgroundColor="Red"
                        HorizontalOptions="FillAndExpand" Clicked="Test_Click">
                </Button>
                <Button x:Name="btnUpcomingTrip" Text="  REGISTER YOUR UPCOMING TRIP  " TextColor="WhiteSmoke" BackgroundColor="DarkGreen"
                        HorizontalOptions="FillAndExpand" Clicked="Test_Click">
                </Button>
            </StackLayout>
        </StackLayout>

Я ожидаю, что обе кнопки должны быть активными.Только первый кликабелен.Когда красный сверху, он включен / кликабелен.Когда зеленый сверху, он включен / кликабелен.Но не оба.

1 Ответ

0 голосов
/ 10 апреля 2019

Решение состоит в том, чтобы удалить один слой стека.Кнопки будут работать нормально, если есть два вложенных слоя стека, но не тогда, когда их три (в этом случае работает только первый).

Если вам действительно нужен третий слой, используйте Grid для третьегослой вместо StackLayout.

...