我有一个关于wpf和ListView
的问题。我在windows。xaml
<Grid>
<ListView Margin="10" Name="lvUsers">
<ListView.View>
<GridView>
<GridViewColumn Header="Names" Width="140" DisplayMemberBinding="{Binding Name}" />
<GridViewColumn Header="Telefon" Width="60" DisplayMemberBinding="{Binding Age}" />
<GridViewColumn Header="Adress" Width="180" DisplayMemberBinding="{Binding Mail}" />
</GridView>
</ListView.View>
</ListView>
在我的windows。xaml。cs中我有这段代码
public partial class ListViewGridViewSample : Window
{
public ListViewGridViewSample()
{
InitializeComponent();
List<User> items = new List<User>();
items.Add(new User() { Name = "molo", Telefon= 0909090, Adress= "Street" });
items.Add(new User() { Name = "moloi", Telefon="99999", Adress= "street2" });
}
}
我的问题是,当我执行这个程序代码时,我得到一个具有ListView
的窗口。现在我想选择单行或多行。也许我想选择第二行,这将是User moloi,选择这行后,我想传递给一个消息框。我该怎么做呢?
谁能给我一个简单的例子
谢谢大家
ListView有一个名为SelectionMode="Extended"
的属性。这将允许您设置所需的选择模式。为了做出选择行为,您可以使用SelectionChanged
事件,该事件在ListView
上也可用。这两件事可以帮助你实现上面所说的一切。
<ListView Name="lvUsers"
ItemsSource="{Binding}"
Margin="10"
SelectionMode="Extended"
SelectionChanged="lvUsers_SelectionChanged">
<ListView.View>
和事件后面的代码:
private void lvUsers_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
//e.AddedItems - these are the items that have currently been selected
}