сравнить содержимое ByteBuffer?

What ' {private ICommand myCommand; public ICommand MyCommand {...

При использовании RelayCommand Джоша Смита в большинстве примеров, которые я видел, используется ленивая инициализация, например:

public class ViewModel
{
    private ICommand myCommand;

    public ICommand MyCommand
    {
        get
        {
            if (myCommand == null)
            {
                myCommand = new RelayCommand(p => DoSomething() );
            }

            return myCommand;
        }
    }
    // ... stuff ...

}

Вместо создания RelayCommand в конструкторе, как это :

public class ViewModel
{
    public ViewModel()
    {
            MyCommand = new RelayCommand(p => DoSomething());
    }

    public ICommand MyCommand
    {
        get;
        private set;

    }

    // ... stuff ...
}

Какая польза от использования отложенной инициализации? Он должен будет вызвать свойство get при настройке привязки, поэтому я не вижу причин использовать этот метод вместо настроек, заданных в конструкторе.

Я что-то здесь упускаю?

13
задан BoltClock 26 September 2017 в 07:18
поделиться