ich die Ausnahme erhalten:C#: AmbiguousMatchException: mehrdeutige Übereinstimmung gefunden
AmbiguousMatchException: zweideutiges Spiel
gefunden
wenn mein Fenster zu öffnen und die XAML analysiert wird. Ich habe eine ViewModel-Basisklasse. Es verfügt über eine Eigenschaft für die SelectedItem Eigenschaft eines Datagrid
public class BaseViewModel<T> : ViewModel, INotifyPropertyChanged where T : MyClass
{
protected T _selectedItem;
public T SelectedItem
{
get
{
return _selectedItem;
}
set
{
_selectedItem = value;
OnPropertyChanged();
}
}
}
In meiner ererbten Ansichtsmodell ich diese Eigenschaft überschreiben, die die Ausnahme So
public new MyInheritedClass SelectedItem
{
get
{
return _selectedItem;
}
set
{
_selectedItem = value;
OnPropertyChanged();
//Do other stuff
}
}
produziert, wie die overrided Eigenschaft verwenden und nicht eine Ausnahme bekommen?
Weil ich etwas Besonderes für diese geerbte Klasse tun muss. Sehen Sie sich den Kommentar in der neuen Eigenschaft –
an. Dann sollten Sie die Eigenschaft in der Basisklasse virtuell machen und sie in der abgeleiteten Klasse überschreiben. Siehe meine bearbeitete Antwort. – mm8