"Property Get method was not found" OnPropertyChanged 错误
"Property Get method was not found" error on OnPropertyChanged
我收到错误
Additional information: Property Get method was not found when invoking OnPropertyChanged.
我的想法是,我有一个 ListView
,其中包含 select 和 SelectionMode="Multiple"
的多个项目。每次在 ListView
中单击某个项目时,我都想将其添加到 ObservableCollection<Inspection>
。
目前我是这样做的:
Xaml:
<ListView x:Name="Reports"
Margin="0,5,0,0"
RelativePanel.Below="ListViewHeader"
SelectionMode="Multiple"
ItemsSource="{Binding inspectionCatalogSingleton.Inspections}"
SelectedItem="{Binding SelectedInspections, Mode=TwoWay}">
</ListView>
视图模型:
public ReportViewModel()
{
_selectedInspections = new ObservableCollection<Inspection>();
}
private ObservableCollection<Inspection> _selectedInspections;
public Inspection SelectedInspections
{
set
{
_selectedInspections.Add(value);
OnPropertyChanged();
}
}
/*....*/
public event PropertyChangedEventHandler PropertyChanged;
[NotifyPropertyChangedInvocator]
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
我在 属性 的设置部分设置了一个断点,它进入正常但是当我单击继续时错误在这一行上升:
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
我做错了什么?
由于 On属性Changed 将指示 wpf 更新所有引用的绑定,因此它需要一种方法来获取 属性.
的值
您的 属性 SelectedInspections 中缺少 Getter。
这就是您收到此 Exception/Error 消息的原因。
我收到错误
Additional information: Property Get method was not found when invoking OnPropertyChanged.
我的想法是,我有一个 ListView
,其中包含 select 和 SelectionMode="Multiple"
的多个项目。每次在 ListView
中单击某个项目时,我都想将其添加到 ObservableCollection<Inspection>
。
目前我是这样做的:
Xaml:
<ListView x:Name="Reports"
Margin="0,5,0,0"
RelativePanel.Below="ListViewHeader"
SelectionMode="Multiple"
ItemsSource="{Binding inspectionCatalogSingleton.Inspections}"
SelectedItem="{Binding SelectedInspections, Mode=TwoWay}">
</ListView>
视图模型:
public ReportViewModel()
{
_selectedInspections = new ObservableCollection<Inspection>();
}
private ObservableCollection<Inspection> _selectedInspections;
public Inspection SelectedInspections
{
set
{
_selectedInspections.Add(value);
OnPropertyChanged();
}
}
/*....*/
public event PropertyChangedEventHandler PropertyChanged;
[NotifyPropertyChangedInvocator]
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
我在 属性 的设置部分设置了一个断点,它进入正常但是当我单击继续时错误在这一行上升:
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
我做错了什么?
由于 On属性Changed 将指示 wpf 更新所有引用的绑定,因此它需要一种方法来获取 属性.
的值您的 属性 SelectedInspections 中缺少 Getter。 这就是您收到此 Exception/Error 消息的原因。