Wie man eine Abhängigkeit in einen WPF Ivalueconverter injiziertC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Wie man eine Abhängigkeit in einen WPF Ivalueconverter injiziert

Post by Anonymous »

Ich möchte meinem WPF IvalueConverter DI hinzufügen. Ich habe diese Frage hier bereits gefunden, aber sie funktioniert nur mit Xamarin . So lösen Sie eine Abhängigkeit von Ivalueconverter in Xamarin.formen mit Prism/Dryioc. Ich benutze Prism.wpf mit dem Unity -Container. Ist dies derzeit überhaupt möglich in WPF?

Code: Select all

public class ConnectionStatusToColorConverter : IValueConverter
{
private readonly ThemeManager _manager;

public ConnectionStatusToColorConverter(ThemeManager manager)
{
_manager = manager ?? throw new ArgumentNullException(nameof(manager));
}

public object Convert(
object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is ConnectionStatus status)
{
return status switch
{
ConnectionStatus.Connected => _manager.GetStaticColorBrush(StaticColor.Green),
ConnectionStatus.Disconnected => _manager.GetStaticColorBrush(StaticColor.Red),
_ => _manager.GetStaticColorBrush(StaticColor.Red),
};
}

return Brushes.Transparent;
}

public object ConvertBack(
object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
Der themenanager wurde bereits in app.xaml.cs .protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
// used for dependency injection
containerRegistry.RegisterInstance(ManagerLocator.Resolve().Value);
}
< /code>
Der ManagerLocator ist geschrieben und funktioniert auch wie erwartet - also funktioniert der DI in den ViewModels < /p>
Wenn ich also mit der Anwendung beginne, erhalte ich diesen Fehler: < /p>

system.winds. 'At.active.fbcv4.info.Converters.ConnectionStatostoColorConverter'. Sie können die Argumente oder FactoryMethod -Anweisungen verwenden, um diesen Typ zu konstruieren.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post