簡體   English   中英

為什么我的某些按鈕在運行時被禁用?

[英]Why are some of my buttons disabled at runtime?

打開窗口后,可以單擊“ Abort ,但其他所有按鈕都不是。 我在獲取器上設置了斷點:

public ICommand OkCommand
        {
            get { return _okCommand; }
        }

並且該按鈕在調用后被禁用。 我覺得這里缺少明顯的東西。 我的綁定設置不正確嗎? 還是沒有正確初始化?

我的ViewModel構造函數:

[ImportingConstructor]
        public MyViewModel(IMyViewModel view)
            : base(view)
        {
            _okCommand = new DelegateCommand(OkHandler, IsValid);
            _refreshCommand = new DelegateCommand(RefreshHandler, IsValid);
            _testConnCommand = new DelegateCommand(TestConnectionHandler, IsValid);
        }

我的XAML中的兩個按鈕。

<StackPanel Orientation="Horizontal" Margin="0,14" HorizontalAlignment="Center" DockPanel.Dock="Bottom">
            <Button Command="{Binding OkCommand}" Content="Ok" IsDefault="True" TabIndex="3" Margin="5,0"/>
            <Button Content="Abort" IsCancel="True" TabIndex="4" Margin="0"/>
        </StackPanel>

DelegateCommand構造函數的第二個參數是Func ,它指示Command是否可執行。 WPF使用它來確定是否應啟用按鈕等。

我將檢查您的IsValid Func /方法是否正常,即:返回true

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM