C# Windows 通用应用程序列表查看所选项内容
本文关键字:选项 列表 Windows 应用程序 | 更新日期: 2023-09-27 17:56:28
我正在构建一个通用Windows应用程序并使用ListView,单击后,我似乎无法获得所选项目文本/项目详细信息。
我的 XAML 代码:
<ListView Name="listviews" Margin="10,172,10,0" Tapped="listviews_Tapped" SelectionChanged="listviews_SelectionChanged">
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Bookings.ID}" Visibility="Collapsed" />
<TextBlock>
<Run Text="{Binding Bookings.first}" FontSize="24"></Run>
<Run Text="{Binding Bookings.last}" FontSize="32"></Run>
</TextBlock>
<TextBlock Tag="{Binding Bookings.ID}">
<Run Text="Total: "/>
<Run Text="{Binding Bookings.pax}" />
<Run Text=" - M: "/>
<Run Text="{Binding Bookings.total_male}"></Run>
<Run Text=" / F: "/>
<Run Text="{Binding Bookings.total_female}"></Run>
</TextBlock>
<ToggleSwitch x:Name="toggleSwitch1" OnContent="Checked-in" OffContent="Waiting" />
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我尝试使用Tappped & SelectionChanged,但似乎无法获取数据...有什么建议吗?
谢谢!
如果要在 ItemClick 事件上捕获它,则必须将 ListView 的 ItemClickEnabled 属性设置为 True,将 SelectionMode 设置为 none。
之后,在 ItemCLick 事件处理程序的第二个参数(通常是 e 参数)中,您可以使用 e.ClickedItem 属性捕获您的模型。
不要忘记将其转换为您的模型,例如:
var myClickedItem = e.ClickedItem as Bookings
请尝试将其添加到您的主页.cs文件中:
void listviews_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
Bookings SelectedBook = (Bookings)listviews.SelectedItem;
var abc = SelectedBook.ID;
}
现在,您可以使用 SelectedBook.xyz 访问 Bookings 类型对象的所有属性