在WPF中以编程方式在ListViewItem上创建点击事件

时间:2019-05-25 18:10:29

标签: c# wpf listview

我正在制作WPF应用程序,该应用程序具有一个UserControl,该控件具有列表视图。

我试图创建一个单击事件侦听器,但我一直无法正常工作,而且还没有找到解决方法

我用以下对象填充此列表视图项:

List<AsesoriaClass> listaAsesorias = phpClass.getListaAsesoriasAsesor(asesor.ID);
            foreach (var asesoria in listaAsesorias)
            {
                AsesoriaTable data = new AsesoriaTable(asesoria.AsesoriaID.ToString(), asesoria.ClienteNombre + " " + asesoria.ClienteApellidos, asesoria.FechaInicio.ToString(), asesoria.FechaFinal.ToString());
                this.ListView.Items.Add(data);
            }

这是用户控件的XAML:

<ListView x:Name="ListView">
            <ListView.View>
                <GridView>
                    <GridViewColumn Header="ID" DisplayMemberBinding="{Binding Path=Id}" Width="100"/>
                    <GridViewColumn Header="Cliente" DisplayMemberBinding="{Binding Path=Cliente}" Width="300"/>
                    <GridViewColumn Header="Inicio" DisplayMemberBinding="{Binding Path=Inicio}" Width="200"/>
                    <GridViewColumn Header="Final" DisplayMemberBinding="{Binding Path=Final}" Width="200"/>
                </GridView>
            </ListView.View>
        </ListView>

我想做一个点击监听器,所以当我点击一个项目时,发生了一些事情(开始时,我只希望它显示一个消息框)。我该怎么办?

1 个答案:

答案 0 :(得分:1)

您可以简单地在SelectionChanged上附加事件处理程序。像这样

 ListView.SelectionChanged += LstOnSelectionChanged;

LstOnSelectionChanged是一种方法。

private void LstOnSelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
  MessageBox.Show("Anything"); 
}