c# – 如何获取WPF listview以将字节数组格式化为逗号分隔的字符
发布时间:2020-12-15 19:31:29 所属栏目:百科 来源:网络整理
导读:我正在尝试将一些数据绑定到 WPF列表视图.我的数据类型的一个属性是byte []类型,我希望它显示为逗号分隔的字符串,所以例如{12,54}将显示为12,54而不是Byte [ ]数组.我想我想制作一个自定义的DataTemplate,但我不确定.这是最好的方式吗?如果是这样,我该怎么
我正在尝试将一些数据绑定到
WPF列表视图.我的数据类型的一个属性是byte []类型,我希望它显示为逗号分隔的字符串,所以例如{12,54}将显示为12,54而不是Byte [ ]数组.我想我想制作一个自定义的DataTemplate,但我不确定.这是最好的方式吗?如果是这样,我该怎么办?如果没有,最好的方法是什么?
编辑:我只想将它用于一列 – 其他属性显示正常. 解决方法
我建议使用ValueConverter:
[ValueConversion(typeof(byte []),typeof(string))] public class ByteArrayConverter : IValueConverter { #region IValueConverter Members public object Convert(object value,Type targetType,object parameter,System.Globalization.CultureInfo culture) { byte [] bytes = (byte [])value; StringBuilder sb = new StringBuilder(100); for (int x = 0; x<bytes.Length; x++) { sb.Append(bytes[x].ToString()).Append(" "); } return sb.ToString(); } public object ConvertBack(object value,System.Globalization.CultureInfo culture) { throw new NotSupportedException(); } #endregion } 在你的xaml中,你将它添加到你的绑定中: <Window.Resources> <local:ByteArrayConverter x:Key="byteArrayConverter"/> </Window.Resources> ... "{Binding ByteArrayProperty,Converter={StaticResource byteArrayConverter}}" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |