[英]Checkbox in ItemTemplate
我的<GridView.ItemTemplate>
有一個<Checkbox/>
<GridView.ItemTemplate>
。 如何處理<Checkbox/>
的元素?
例如 ,我要在選中復選框時刪除項目。
我認為應該在這里寫。 但是呢
private void CheckBox_Checked_1(object sender, RoutedEventArgs e)
{
}
這是我的XAML:
<GridView Margin="0,10,0,0"
RelativePanel.AlignHorizontalCenterWithPanel="True"
x:Name="GridColections"
IsItemClickEnabled="True"
SelectionMode="None"
ItemsSource="{x:Bind DS.AllRem, Mode=OneWay}"
ItemClick="GridColections_ItemClick" >
<GridView.ItemTemplate>
<DataTemplate x:DataType="local:GetRem" >
<Grid Margin="-2,0,-6,0" BorderBrush="LightGray" BorderThickness="1" HorizontalAlignment="Stretch">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="40" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="30" />
<RowDefinition Height="30" />
</Grid.RowDefinitions>
<TextBlock TextTrimming="CharacterEllipsis" Grid.Column="0" Grid.Row="0" HorizontalAlignment="Stretch" TextWrapping="Wrap" Text="{x:Bind ReminderName}" Margin="5,5,0,0" FontSize="20"/>
<TextBlock TextTrimming="CharacterEllipsis" Grid.Column="0" Grid.Row="1" Width="600" TextWrapping="Wrap" Text="{x:Bind ReminderDescription}" Margin="5,5,0,0" FontSize="12"/>
<CheckBox Grid.Column="2" Grid.Row="0" Grid.RowSpan="2" VerticalAlignment="Center" Checked="CheckBox_Checked_1"/>
</Grid>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
問題是,您幾乎肯定希望能夠在單擊處理程序中使用DataContext
,但是僅通過引用CheckBox
(將作為回調中的sender參數)就不會那么容易。 通常,您將在項目的視圖模型上創建一個Command
並綁定到該模型,您想要傳遞的任何其他信息都將通過CheckBox
的CommandParameter
傳遞。
完成此操作后,您現在可以在視圖模型中進行操作,並通過命令參數引用所需的任何信息(例如,您可以將CommandParameter = "{Binding}"
為獲取整個數據上下文)該項目的視圖模型,並且可以從您的Command
將該模型作為其參數進行訪問)。 您應該可以通過這種方式解決您的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.