【发布时间】:2010-02-03 11:03:16
【问题描述】:
在 WPF 应用程序中,我有一个 ListView,它通过数据绑定与 ObservableCollection ShQuCollection 连接:
<ListView Name="ShSelList" ItemsSource="{Binding Source={StaticResource myDataSource},Path=ShQuCollection}" SelectionChanged="ShSelList_SelectionChanged">
<ListView.View>
<GridView>
<GridViewColumn Header="Code" DisplayMemberBinding="{Binding StrCode}"/>
<GridViewColumn Header="Date" DisplayMemberBinding="{Binding Date}"/>
<GridViewColumn Header="Time" DisplayMemberBinding="{Binding Time}"/>
</GridView>
</ListView.View>
</ListView>
从 ListView SelectionChanged 事件处理程序内部,我需要调用一个方法并将一个字符串参数传递给它,从 ObservableCollection ShQuCollection 的选定行的一个字段中获取它。
如何从 ListView SelectionChanged 事件处理程序中引用 ObservableCollection?
private void ShSelList_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
...?????
}
已编辑(添加):
我的 ObservableCollection 在另一个窗口的代码隐藏文件中,我使用 Window.Resources 声明来访问它。
<Window.Resources>
<c:ShWindow x:Key="myDataSource"/>
</Window.Resources>
ObservableCollection 看起来像:
ObservableCollection<ShsQu> _ShQuCollection =
new ObservableCollection<ShsQu>();
public ObservableCollection<ShsQu> ShQuCollection
{ get { return _ShQuCollection; } }
public class ShsQu
{
public string StrCode { get; set; }
public string Date { get; set; }
public string Time { get; set; }
}
【问题讨论】:
标签: c# wpf parameters event-handling observablecollection