0

TextBock と CheckBox を備えたこの ListView があります。

<ListView x:Name="ActiveTasksListView" ItemsSource="{Binding Path=ActiveTasks}" SelectedItem="{Binding Id}">

<ListView.ItemsPanel>
    <ItemsPanelTemplate>
        <StackPanel Orientation="Vertical" Margin="37,0,17,0" />
    </ItemsPanelTemplate>
</ListView.ItemsPanel>

<ListView.ItemTemplate>
    <DataTemplate>
        <Border Background="White">
            <TextBlock Text="{Binding Name}" />
            <CheckBox Click="CheckBox_Click_1" />
        </Border>
    </DataTemplate>
</ListView.ItemTemplate>

</ListView>

MessageDialog() でクリックした項目の Id (データソースから) を表示する必要があるよりも CheckBox をクリックした場合

4

2 に答える 2

0

VisualTreeHelper とクリックされた CheckBox 要素を使用すると、ListViewItem を見つけてその Id プロパティを取得できます

void CheckBox_Click_1(object sender, RoutedEventArgs e)
{
    var item = sender as DependencyObject;

    while (!(item is ListViewItem))
    {
        item = VisualTreeHelper.GetParent(item);
    }

    var id = ((ObjectClass) item).Id;
}
于 2013-03-16T00:14:31.427 に答える