代码之家  ›  专栏  ›  技术社区  ›  Fermin

您应该使用IValueConverter做什么?

  •  0
  • Fermin  · 技术社区  · 14 年前

    例如,如果我班上有一处房产EmployeeID,比如:

    public class EmployeeViewModel : INotifyPropertyChanged
    {
      public int? EmployeeID
      {
        get
        {
          return employeeID;
        }
        set
        {
          employeeID = value;
          RaisePropertyChanged("EmployeeID");
        }
      }
    }
    

    1 回复  |  直到 14 年前
        1
  •  2
  •   Stephan    14 年前

    最好的做法是将这些值放在ViewModel中并进行直接绑定。虽然您可以在ValueConverter中完成,但在转换器中的作用域非常有限,这会限制您的能力。

    我对自己的一般规则是尽量保持我所有的值转换器作为两种类型之间的简单转换,即Bool到Visibility或Color到Brush。这样,我就不需要在valueconverter中包含太多的逻辑,并且使维护变得更简单。