我是Silverlight的新手,我在找到解决问题的方法时遇到了一些麻烦。
我有一个包含3列的silverlight数据网格。其中一列绑定为整数。我希望能够将我的列绑定到一个函数,该函数将我的整数转换为它的状态代码。该函数接受一个整数,并使用switch语句返回该数字所代表的字符串。
0 =无效
1 =有效
2 =待定
等
我发现很多东西都是Element Binding的技术,这很酷,但不是我想要的。
答案 0 :(得分:1)
您可以创建一个IValueConverter,使您能够调用数据绑定值上的函数。
您可以自定义Convert方法,以根据传入的值返回字符串:
公共对象转换(对象值,类型targetType,对象参数,CultureInfo文化) {
开关((int)的值)
{
案例0:返回“无效”;
案例1:返回“有效”;
案例2:返回“待定”;
}
}
IValueConverter on MSDN
IValueConverter example in Silverlight
答案 1 :(得分:0)
根据您的架构,我会
所以你会得到类似下面的内容
public class ViewModel:INoftifyPropertyChanged
{
private Model _model;
public string StatusCodeName
{
get
{
string statusCodeName = SomeCodeToGetStatusCodeNameFromStatus(_model.Status);
return statusCodeName;
}
}
}
然后,您可以绑定到此属性
{Binding StatusCodeName}