Xamarin表单-基于选择器显示/隐藏框架

问题描述

我有一个具有两个值的选择器。

  1. 点击并收集
  2. 运输

如何根据选择器中选择的内容显示正确的帧?

例如,如果用户选择“单击并收集”,它将显示“ frameClickandCollect”。如果用户选择“发货”,则会显示“ frameShipping”。

这是我的XAML代码:

<Frame x:Name="frameDeliveryOptions" BorderColor="LightGray" CornerRadius="10" HasShadow="False">
   
    <StackLayout>
      
      <Label Text="Delivery Options:" FontSize="18" TextColor="Green" FontAttributes="Bold"/>
         
      <Picker x:Name="DeliveryOptionPicker" Title="Select a delivery option" TitleColor="Black">
            
            <Picker.ItemsSource>
               
               <x:Array Type="{x:Type x:String}">
               <x:String>Click and Collect</x:String>
               <x:String>Shipping</x:String>
               </x:Array>

            </Picker.ItemsSource>
      
       </Picker>
    
     </StackLayout>

</Frame>

<Frame x:Name="frameClickandCollect" BorderColor="LightGray" CornerRadius="10" HasShadow="False">
   
    <StackLayout>
      
      <Label Text="Click and Collect Yo" FontSize="18" TextColor="Green" FontAttributes="Bold"/>
      
    </StackLayout>

</Frame>

<Frame x:Name="frameShipping" BorderColor="LightGray" CornerRadius="10" HasShadow="False">
   
    <StackLayout>
      
      <Label Text="Shipping Yo" FontSize="18" TextColor="Green" FontAttributes="Bold"/>
      
    </StackLayout>

</Frame>

解决方法

您可以使用IsVisible =“ false” /“ true”使用选择器SelectedIndexChanged事件来隐藏/显示框架 XAML:

<Picker x:Name="DeliveryOptionPicker" Title="Select a delivery option" TitleColor="Black" SelectedIndexChanged="DeliveryOptionPicker_SelectedIndexChanged">

                <Picker.ItemsSource>

                    <x:Array Type="{x:Type x:String}">
                        <x:String>Click and Collect</x:String>
                        <x:String>Shipping</x:String>
                    </x:Array>

                </Picker.ItemsSource>

            </Picker>

c#:

private void DeliveryOptionPicker_SelectedIndexChanged(object sender,EventArgs e)
    {  
        //you can also use SelectedItem

        if (DeliveryOptionPicker.SelectedIndex == 1)
        {
            frameClickandCollect.IsVisible = false;
        }

    }

enter image description here

enter image description here

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...