0

Рисую UI с помощью WPF и MVVM. При использовании

  <Button Name="priceButton" Content="Прайс" Command="{Binding GetPricesCom}" 
  HorizontalAlignment="Left" Margin="339,513,0,0" VerticalAlignment="Top" 
  Width="125" Height="31" Click="priceButton_Click"/>

Метод вызывается при запуске программы, а не при нажатии кнопки. Каким образом реализовать ICommand, чтобы он вызывался только при нажатии кнопки.

    public ICommand GetPricesCom
    {
        get {
            GetPrices();
            return GetPricesCom;
        }
    }
Ivan
  • 331
  • Margin - не ставьте элементы руками в конструкторе, учите XAML разметку и пишите все сами (а то потом будете задавать вопрос "что у меня элементы скачут/пропадают"). Сам Margin должен быть не выше 15-20, а не 339... 2. Логика ICommand реализуется не в его get, а в отдельном методе, который через RelayCommand задается этому интерфейсу. 3. Click и Command на одном контроле... Вы серьезно?
  • – EvgeniyZ Sep 05 '18 at 08:42
  • С WPF столкнулся впервые, XAML тоже изучать не доводилось. Буду благодарен, если посоветуете качественную литературу по нему. – Ivan Sep 05 '18 at 08:57
  • Могли бы и поискать... – EvgeniyZ Sep 05 '18 at 09:05