【问题标题】:How to get selected item of Picker which is inside a ListView?如何获取 ListView 内的 Picker 的选定项?
【发布时间】:2017-08-11 21:40:00
【问题描述】:

我正在处理一个列表视图,其中我有一个标签和选择器。我想检测列表视图中选择器的选定项目。我无法访问 x:选择器的名称在 Xaml.cs 文件中。下面是我的代码。如果我走错了方向,请任何人帮助我。在此先感谢。

这是我的 Xaml 代码:

                    <ListView x:Name="MasterRoomList" BackgroundColor="Transparent"
                                      ItemsSource="{Binding MasterRoomWindowsList}"
                                      IsVisible="{Binding RoomsVisibility}" ItemTapped="OnItemTapped" SeparatorVisibility="None">
                  <ListView.HeightRequest>
                    <OnIdiom x:TypeArguments="x:Double">
                      <OnIdiom.Phone>
                        <OnPlatform x:TypeArguments="x:Double" iOS="150" Android="150" WinPhone="150" />
                      </OnIdiom.Phone>
                      <OnIdiom.Tablet>
                        <OnPlatform x:TypeArguments="x:Double" iOS="300" Android="300" WinPhone="300" />
                      </OnIdiom.Tablet>
                    </OnIdiom>
                  </ListView.HeightRequest>
                  <ListView.ItemTemplate>
                    <DataTemplate>
                      <ViewCell>
                        <Grid Padding="2">
                          <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="*"/>
                            <ColumnDefinition Width="*"/>
                          </Grid.ColumnDefinitions>
                          <Label Grid.Column="0" Text="{Binding RoomName}" TextColor="Black" FontFamily="Avenir Book" VerticalTextAlignment="Center">
                            <Label.FontSize>
                              <OnIdiom x:TypeArguments="x:Double">
                                <OnIdiom.Phone>
                                  <OnPlatform x:TypeArguments="x:Double" iOS="13" Android="13" WinPhone="13" />
                                </OnIdiom.Phone>
                                <OnIdiom.Tablet>
                                  <OnPlatform x:TypeArguments="x:Double" iOS="20" Android="20" WinPhone="20" />
                                </OnIdiom.Tablet>
                              </OnIdiom>
                            </Label.FontSize>
                          </Label>
                          <Picker x:Name="CurtainPicker" BackgroundColor="Transparent" TextColor="Black" ItemsSource="{Binding CurtainsTypeList}"  SelectedIndexChanged="CurtainPicker_OnSelectedIndexChanged" Title="Select Style" Grid.Column="1" HorizontalOptions="FillAndExpand" VerticalOptions="CenterAndExpand">
                            <Picker.HeightRequest>
                              <OnIdiom x:TypeArguments="x:Double">
                                <OnIdiom.Tablet>
                                  <OnPlatform x:TypeArguments="x:Double" iOS="40" Android="40"/>
                                </OnIdiom.Tablet>
                                <OnIdiom.Phone>
                                  <OnPlatform x:TypeArguments="x:Double" iOS="30" Android="30"/>
                                </OnIdiom.Phone>
                              </OnIdiom>
                            </Picker.HeightRequest>
                          </Picker>
                        </Grid>
                      </ViewCell>
                    </DataTemplate>
                  </ListView.ItemTemplate>
                </ListView>

这是我的 Xaml.cs 代码:

private void CurtainPicker_OnSelectedIndexChanged(object sender, EventArgs e)
    {
        var selectedItem = (string) CurtainPicker.SelectedItem;


    }

【问题讨论】:

    标签: xamarin xamarin.forms


    【解决方案1】:
    var picker = (Picker)sender;
    var selectedItem = (string) picker.SelectedItem;
    

    【讨论】:

    • 非常感谢 Jason。我做了同样的事情并得到了它。但是现在我从该事件中选择了一个选择器事件,我想要与上面列表视图中选择的选择器相对应的标签文本。 I wrote a ListView Item selected event which is not getting fired when picker is selected.Please help me.Thank you for your reply.
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多