如何从内部控件检索 Listview.item

本文关键字:检索 Listview item 控件 内部 | 更新日期: 2023-09-27 18:31:57

所以我有这个相对简单的问题:我有以下列表视图:

<ListView x:Name="lstView">
    <ListView.ItemTemplate>
        <DataTemplate>
            <Grid x:Name="ItemGrid">
                <HyperlinkButton Click="HyperlinkButton_Click"/>
            </Grid>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

我想在触发HyperlinkButton_Click事件时删除该特定项目。我已经尝试了各种事情,例如:

PinOutDetails p = ((sender as HyperlinkButton).Parent as Grid).Parent as PinOutDetails;
lstView.Items.Remove(p);

但显然,它不起作用...那么,如何从 Listview.Item (PinOutDetails 类)的子控件之一中获取它呢?

如何从内部控件检索 Listview.item

你最后 .父级应为 。作为父网格的数据上下文的 DataContext 应该是您传递的类。

PinOutDetails p = ((sender as HyperlinkButton).Parent as Grid).DataContext as PinOutDetails;
lstView.Items.Remove(p);

不幸的是,如果没有更多信息,例如您首先如何填充列表视图,我无法提供更具体的答案。