Привязка команд не работает во всплывающем окне - PullRequest
0 голосов
/ 25 сентября 2018

Я использую привязку команды, которая работает в других аналогичных окнах, но не в одном.Я проверил DataContext и нашел его правильным.EventHandler CanExecuteChanged фактически никогда не получает удар.Codebehind устанавливается как DataContext для XAML

XAML

<Button CommandParameter="Flow" Content="Test" 
        Command="{Binding SetAutoYAxisCommand, Mode=OneWay}" />

Код позади

public RelayCommand ExportHistoricalCommand { get; set; }
public RelayCommand1 SetAutoYAxisCommand { get; set; }

public TransientPipeDialog(TransientPipeModel transientPipeModel)
{
    InitializeComponent();

    this.ParentModel = transientPipeModel;
    this.TransientPipeModel = transientPipeModel.DeepCopy();
    ExportHistoricalCommand = new RelayCommand(ExportHistoricalData);
    SetAutoYAxisCommand = new RelayCommand1(SetAutoYAxis, o => true);
}

1 Ответ

0 голосов
/ 25 сентября 2018

Попробуйте инициализировать вашу команду при открытии всплывающего окна:

private void Popup_Opened(object sender, System.EventArgs e)
{
    SetAutoYAxisCommand = new RelayCommand1(SetAutoYAxis, o => true);
}   

<Popup Opened="Popup_Opened">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...