0

このトピックが何度も議論されていることは知っていますが、それでもうまくいきません。StackPanelに配置された3つのRadioButtonがあります。私は彼らのIsCheckedをビューモデルのいくつかの変数にバインドしようとしています。これが私がしたことです:

ビューのXAMLファイル:

  <RadioButton Name="rbExpReview"
                             IsChecked="{Binding Path=rbExpReviewIsChecked, Mode=TwoWay}"
                             Foreground="White">
                    <RadioButton.Content>
                        <Label Content="Experiment Review"
                               HorizontalContentAlignment="Center"
                               VerticalContentAlignment="Center" />
                    </RadioButton.Content>
  </RadioButton>

ビューモデルで、変数を宣言しました。

_rbExpReviewIsChecked = true;

およびRadioButtonのIsCheckedに応答するプロパティ:

public bool rbExpReviewIsChecked
        {
            get
            {
                return _rbExpReviewIsChecked;
            }
            set
            {

                _rbExpReviewIsChecked = value;
                OnPropertyChanged("rbExpReviewIsChecked");
            }
        }

ただし、ボタンをオンまたはオフにすると、モデルの表示コードに応答がありません(ブレークポイントがヒットしていません)。したがって、バインディングの問題は何ですか?または他に何か?私はXAMLを初めて使用するので、どんなポインタでも大歓迎です。ニック

4

2 に答える 2

1

そして、Binding View-> ViewModelはどこにありますか?

于 2012-11-02T14:02:01.013 に答える
1

あなたのバインディング構文は正しいです。あなたのプロパティは正しいようです。これにより、唯一の可能性が残されます: DataContext です。

Visual Studio の [出力] ウィンドウで何が行われますか? DataContext が適切に設定されていない場合、バインディング エラーが発生するはずです。

DataContext は、Parent から継承するか、設定することができます。あなたの DataContext は何ですか?

于 2012-11-02T20:22:31.307 に答える