私はかなり長い間これを検索しようとしましたが、役立つ結果は見つかりませんでした。(おそらく私のgoogle-fooは動作する必要がありますか?)私もWPF MVVMにかなり慣れていないので、まだ学んでいることがたくさんあります。
私の質問は実際には2つの部分に分かれています...最初に、ビュー内にチェックボックスがあるコンボボックスがあります。コード:
<ComboBox Grid.Column="0"
Grid.ColumnSpan="5"
Margin="15,0,0,0"
ItemsSource="{Binding StaffNames}"
SelectedValue="{Binding SelectedStaffNames}"
Grid.Row="4">
<ComboBox.ItemTemplate>
<DataTemplate>
<CheckBox Content="{Binding Path=FullName}"
VerticalAlignment="Center"
IsChecked="{Binding RelativeSource={RelativeSource FindAncestor,AncestorType={x:Type ComboBoxItem}}, Path=IsSelected,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}"
Command="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Window},
Path=DataContext.CheckBoxSelected}"
Margin="3">
</CheckBox>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
チェックボックスをオンにするたびに、チェックボックスが自動的にオフになっているようです。
私のViewModelコードは次のとおりです。
private bool _isSelected;
public bool IsSelected
{
get
{
return _isSelected;
}
set
{
_isSelected = value;
RaisePropertyChanged("IsSelected");
}
}
ここで何が問題になっていますか?
2番目の質問は、上記が解決したら、チェックしたすべての名前(この場合はスタッフ名)をリストに追加し、値を別のビュー/ビューモデルに戻す必要があります。
私はこれを達成する方法について完全に途方に暮れています。どんな助けや提案も大歓迎です。
ありがとう :)