我正在为以下场景搜索最佳实践(或任何有效的解决方案):
我有一个Employee
课程:
public class Employee
{
public string DisplayName
{ get; set; }
// It is important that this method has a parameter
public string GetSomething(string param)
{ return param + DisplayName; }
}
我有一个List<Employee>
类型的对象绑定到XAML中的ComboBox。
每个员工的DisplayName在ComboBox中正确显示,但是如何为每个员工而不是DisplayName显示GetSomething方法的返回值以及所有员工的确切参数? / p>
绑定到方法是正常的,但是如何绑定到多个实例(对于列表中的每个雇员对象)?使用ObjectDataProvider
我只能绑定到一个确切的实例(或类),而不是员工列表的每个员工对象。
答案 0 :(得分:2)
省去一些麻烦:使用视图模型并创建一个单独的属性,返回每个员工所需的值。为了给出更详细的答案,我需要知道参数的来源。
答案 1 :(得分:1)
我同意@Kent Boogaart使用视图模型绝对是理想的方式(以及最佳实践)。
我之前使用的另一种可能性(在我了解更多关于Model-View-ViewModel之前)是使用BindingConverter。绑定到Employee类或DisplayName属性,并将参数作为参数传递给绑定转换器。