UWP C#Toggleswitch inside Listview-单击Toggleswitch时如何获取行项目

UWP C#Toggleswitch inside Listview-单击Toggleswitch时如何获取行项目,c#,listview,uwp,toggleswitch,C#,Listview,Uwp,Toggleswitch,所以我有一个带有on开关的列表视图。我想做的是触发一个事件,比如ItemClick=“event\u Overview\u Teams\u ItemClick” 但是 Toggled=“TeamPresent\u Toggled” 并处理诸如单击行的TeamID之类的项目 <ListView x:Name="Event_Overview_Teams" HorizontalAlignment="Center" Width="1787" Margin="0,48,0,10" IsItemCli

所以我有一个带有on开关的列表视图。我想做的是触发一个事件,比如
ItemClick=“event\u Overview\u Teams\u ItemClick”
但是
Toggled=“TeamPresent\u Toggled”
并处理诸如单击行的TeamID之类的项目

<ListView x:Name="Event_Overview_Teams" HorizontalAlignment="Center" Width="1787" Margin="0,48,0,10" IsItemClickEnabled="True" ItemClick="Event_Overview_Teams_ItemClick" SelectionMode="None">
                        <ListView.ItemTemplate>
                            <DataTemplate>
                                <Grid Width="900">
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition Width="*" />
                                        <ColumnDefinition Width="*" />
                                        <ColumnDefinition Width="*" />
                                        <ColumnDefinition Width="*" />
                                        <ColumnDefinition Width="*" />
                                        <ColumnDefinition Width="*" />
                                        <ColumnDefinition Width="*" />
                                    </Grid.ColumnDefinitions>
                                    <TextBlock x:Name="TeamName" Grid.Column="0" Text="{Binding TeamName}" TextWrapping="Wrap" />
                                    <TextBlock x:Name="TeamID"   Grid.Column="1" Text="{Binding TeamID}" TextWrapping="Wrap" />
                                    <TextBlock x:Name="TeamNumber" Grid.Column="2" Text="{Binding TeamNumber}" TextWrapping="Wrap" />
                                    <TextBlock x:Name="TeamClass" Grid.Column="3" Text="{Binding TeamClass}" TextWrapping="Wrap" />
                                    <TextBlock x:Name="DeliverTime" Grid.Column="4" Text="{Binding DeliverTime}" TextWrapping="Wrap" />
                                    <!--<TextBlock x:Name="TeamPresent" Grid.Column="5" Text="{Binding TeamPresent}" TextWrapping="Wrap" />-->
                                    <ToggleSwitch x:Name="TeamPresent" Grid.Column="5" IsOn="{Binding TeamPresent}" Toggled="TeamPresent_Toggled"/>
                                </Grid>
                            </DataTemplate>
                        </ListView.ItemTemplate>
                    </ListView>


非常感谢您

当您触发TeamPresent\u Toggled事件时,您可以通过获取ToggleSwitch的数据上下文来获取与当前项绑定的viewmodel。然后从您获得的viewmodel更改属性(例如TeamID)

private void TeamPresent_Toggled(object sender, RoutedEventArgs e)
{
    var toggle = (ToggleSwitch)sender;
    var dataContext = toggle.DataContext;
    MyViewModel dataItem = (MyViewModel)dataContext;
    dataItem.TeamID = "MyNewTeamId";
    ......
}