WPF Convert使用

时间:2023-12-10 12:16:20

在存在基本数据缓存时,可以传入一个数据库中的数据唯一标识码,然后利用自己编写的Convert类,这个Convert类必须实现IValueConverter接口,进行转换,在进行转换的过程中,可以从基本数据缓存中读取我们想要的数据,然后进行封装成我们想要的数据类型,返回的是一个object对象。

public class OrgGuidToOrgNameConvert : IValueConverter

{

/// <summary>

/// 返回orgGuid所代表的部门名称

/// </summary>

/// <param name="value"></param>

/// <param name="targetType"></param>

/// <param name="parameter"></param>

/// <param name="culture"></param>

/// <returns></returns>

public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)

{

string orgGuid = (string)value;

var orgGuidName=BaseDataProvider.OrgInfoDtos.Where(t=>t.OrgIdentifier==orgGuid).Select(t=>t.OrgAlias).ToArray();

return orgGuidName[0];

}

public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)

{

throw new NotImplementedException();

}

}

在.xaml文件中进行调用:

1.将Convert引入。

xmlns:convert="clr-namespace:Hytera.PUC_CTI.Client.UI.Common.ValueConvert"

<convert:OrgGuidToOrgNameConvert x:Key="orgGuidToOrgNameConvert"/>

2.进行调用

Content="{Binding OrgGuid,Converter={StaticResource orgGuidToOrgNameConvert}}

这可以将部门唯一标识转换成一个string类型的部门名称。