我想知道您是否能够在列表视图中添加下拉区域选项。例如,当用户单击特定行时,将在其下方显示一个下拉区域,显示各种信息,而当他们再次单击时,该区域将消失。
使用xamarin形式可以吗?
答案 0 :(得分:0)
您不能在Xamarin Forms的列表视图内添加下拉控件。但是,您可以使用自定义项目模板创建一个自定义列表视图,该列表包含来自用户的“隐藏”堆栈布局,直到用户点击该行以重新启用“隐藏”堆栈布局下推其他行的可见性。您可能需要向ViewModel添加一个额外的属性,以控制各个行的可见性。
答案 1 :(得分:0)
如果您选中此C# corner guide,它将向您展示如何在Xamarin Forms中提出一个可扩展ListView。
您将必须根据需要进行更改,但是您的XAML看起来像这样:
f64
以及您的ViewModel如下:
<ListView x:Name="HotelsList" BackgroundColor="White" IsGroupingEnabled="True" IsPullToRefreshEnabled="true" IsRefreshing="{Binding IsBusy, Mode=OneWay}" ItemsSource="{Binding Items}" RefreshCommand="{Binding LoadHotelsCommand}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout Orientation="Horizontal" VerticalOptions="Center">
<Label VerticalOptions="Center" FontAttributes="Bold" FontSize="Medium" Text="{Binding .RoomName}" TextColor="Black" VerticalTextAlignment="Center" /> </StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
<ListView.GroupHeaderTemplate>
<DataTemplate>
<ViewCell>
<Grid>
<Label FontAttributes="Bold" FontSize="Small" Text="{Binding Name}" TextColor="Gray" VerticalTextAlignment="Center" />
<Image x:Name="ImgA" Source="{Binding StateIcon}" Margin="0,0,5,0" HeightRequest="20" WidthRequest="20" HorizontalOptions="End" />
<Grid.GestureRecognizers>
<TapGestureRecognizer Command="{Binding Source={x:Reference currentPage}, Path=BindingContext.RefreshItemsCommand}" NumberOfTapsRequired="1" CommandParameter="{Binding .}" />
</Grid.GestureRecognizers>
</Grid>
</ViewCell>
</DataTemplate>
</ListView.GroupHeaderTemplate>
</ListView>
在上面的指南中查看博客作者,并完美地解释了与此用法有关的所有方面
祝你好运
在查询的情况下还原。