你好我试图从绑定对象列表中检索一个对象。我使用MVVM风格 所以我有一个班级名称频道。 Channel具有以下属性:string Name,string Label,int Id,int assignedLocation等。
我还有一个名为ChannelSetup.xaml的XAML文件,其中有一个
<ListView x:Name="ListView">
<ListView.View>
<GridView>
<GridViewColumn DisplayMemberBinding="{Binding Name}"/>
<GridViewColumn Width="65" Header="Channel #">
<GridViewColumn.CellTemplate>
<DataTemplate>
<ComboBox "Loaded="LineComboBox_OnLoaded"....
</GridViewColumn>
在我的ChannelSetup.xaml.cs文件中,我有类似的东西
this.AvailableChannelLines = new ObservableCollection<Channel>();
this.DataContext = this;
this.ListView.ItemsSource = this.AvailableChannelLines;
它会正确填充我的列表视图,一切都很好..
private void LineComboBox_OnLoaded(object sender, RoutedEventArgs e)
{
//// HERE I NEED TO GET THE CURRENT CHANNEL OBJECT
}
但是当调用LineComboBox_OnLoaded事件时,我希望能够知道/获取正被绑定到的当前频道对象。如何做到这一点,或者我需要使用不同的方法,方法或事件?
答案 0 :(得分:0)
DataContext
将指向当前频道。
private void LineComboBox_OnLoaded(object sender, RoutedEventArgs e)
{
Channel currentChannel = (sender as ComboBox).DataContext as Channel;
}