如何修复ListView选择更改
本文关键字:选择 ListView 何修复 | 更新日期: 2023-09-27 18:10:37
我有一个ListView,它的子视图是包含一个图像和四个按钮的网格。它们都是动态填充的。下面是ListView的选择更改事件的代码:
private void Thumbnails_SelectionChanged(object sender, SelectionChangedEventArgs e) //display large png on click of thumbnail and slide notes
{
item = Thumbnails.SelectedIndex + 1; //get original index for each element in ListView
if (LargePic.Children.Count > 0)
{
LargePic.Children.RemoveAt(LargePic.Children.Count - 1); //clear first item in StackPanel
}
LargePic.Children.Add(image_array[item - 1]); //show large png of selected ppt as first item in StackPanel
SlideNotes.Text = slide_notes[item - 1]; //show slide notes in a box below large preview
//GetNotes(PowerPoint_App, presentation)[item - 1];
finalize_import.IsEnabled = true; //enable button for next screen
//selection
all_hide_buttons[item - 1].Click += Hide_Buton_Click;
all_show_buttons[item - 1].Click += Show_Buton_Click;
hide_fade_in_animations[item - 1].Click += Hide_Fade_In_Animations_Click;
show_fade_in_animations[item - 1].Click += Show_Fade_In_Animations_Click;
}
因此,正如您所看到的,只有在列表中选择了特定的子(项)并根据该项号进一步执行某些操作时,才能单击按钮。我的问题是,SelectionChanged得到执行只有当我点击的图像,这是在列表中的子网格的一部分,所以只有这些按钮变得可点击。我想让它在我直接点击按钮时执行,所以如果我点击它,按钮会立即点击,而不需要先点击图像。这可能吗?如何实现?
这解决了我的问题。不完全是我想要的,但它的工作,
鼠标悬停在WPF列表框中选择项目
所以,然后主要的事情在我的问题是,我需要单击listview项目首先,以便能够单击项目内的按钮。在我所包含的链接中,您可以看到,如果我们向listview添加适当的事件,那么当我们悬停一个项目时,选择更改会自动触发,就像我们单击它一样,这节省了一次点击,并在鼠标位于项目上时立即启用所需的按钮。这是有点作弊,但主要的事情是,鼠标指针不能使这个按钮在listview项目中,直到实际接触到项目的一个像素。