Я пытаюсь связать некоторые CheckBoxes в LongListSelector. Они связываются, и правильные CheckBoxes проверяются/не проверены при визуализации представления, но я не могу изменить свой базовый объект, установив/сняв флажок CheckBoxes.Связать CheckBoxes с LongListSelector
<Grid Grid.Row="3">
<phone:LongListSelector ItemsSource="{Binding PlaceOfInterestCategories}">
<phone:LongListSelector.ItemTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay}" Content="{Binding Name}"/>
</DataTemplate>
</phone:LongListSelector.ItemTemplate>
</phone:LongListSelector>
Мой ViewModel имеет следующий код в нем:
private ObservableCollection<PlaceOfInterestCategory> _placeOfInterestCategories;
public ObservableCollection<PlaceOfInterestCategory> PlaceOfInterestCategories
{
get { return _placeOfInterestCategories; }
set
{
if (_placeOfInterestCategories != value)
{
_placeOfInterestCategories = value;
OnPropertyChanged();
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
[NotifyPropertyChangedInvocator]
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
var handler = PropertyChanged;
if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName));
}
-
[DataContract]
public class PlaceOfInterestCategory
{
[DataMember]
public int Id { get; set; }
[DataMember]
public string Name { get; set; }
[DataMember]
public bool IsSelected { get; set; }
}
Я попытался подписаться на событие CollectionChanged, но это не является уволена.
Я мог бы всегда обрабатывать Проверено и снято в моем коде, но я бы предпочел и не обрабатывал все в моей модели просмотра.
Я бы очень признателен за любые данные о том, как я могу заставить связывание работать правильно.
Можете ли вы разместить свой класс PlaceOfInterestCategory? – Marc
Нет необходимости добавлять теги в свой заголовок, для этого есть система тегов. Пожалуйста, прочитайте http://meta.stackexchange.com/q/19190 для обсуждения. Точно так же «Спасибо» уже «покрыты» из-за вашей карты персонажей в правом нижнем углу, так что это тоже не нужно. – Patrick