using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Data; namespace Flyad7_WPF.Converters { public class IO2BinConverter : IValueConverter { #region IValueConverter 成员 public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { UInt16 io = (UInt16)value; string str = ""; for (int i = 0; i < 4; i++) { byte b = (byte)((io >> (i * 4)) & 0x0f); string str_b = System.Convert.ToString(b, 2); if (string.IsNullOrEmpty(str)) { str = str_b.PadLeft(4, '0'); } else { str = str_b.PadLeft(4, '0') + " " + str; } } return str; } public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { return System.Convert.ToUInt16((string)value, 2); } #endregion } }