如何通过基于xml的数据绑定访问导航属性
本文关键字:数据绑定 访问 导航 属性 xml 何通过 | 更新日期: 2023-09-27 18:14:21
我正在尝试学习WPF和MVVM,目前正在与一些数据绑定作斗争。我有一个包含可观察项目集合的ComboBox和一个绑定到ComboBox的SelectedItem并显示EmployeeID值的TextBox。如果可能的话,我想通过导航属性显示与EmployeeID值对应的员工名,但不确定如何修改XAML来实现这一点。
public class Project
{
public int ProjectID;
public string ProjectName;
public int EmployeeID;
public Employee Emp;
}
public class Employee
{
public int EmployeeID;
public string EmployeeName;
}
MainView XAML
<ComboBox x:Name="cbxProjects" Width="75" Height="20"
ItemsSource="{Binding Projects}"
SelectedValue="{Binding Path=SelectedProject}"
DisplayMemberPath="ProjectName" />
<TextBox x:Name="tbxEmployee" Height ="20" Width="100" BorderThickness="1"
Text="{Binding Path=SelectedProject.EmployeeID}"/>
MainViewModel
private ObservableCollection<Project> _projects;
private Project _selectedProject;
public ObservableCollection<Project> Projects
{
get { { return _projects; } }
}
public Project SelectedProject
{
get { return _selectedProject; }
set
{
if (_selectedProject != value)
{
_selectedProject = value;
NotifyPropertyChanged("SelectedProject");
}
}
}
难道你不直接绑定到Path=SelectedProject.Emp.EmployeetName
吗?