Registrierung von Ansichten und ViewModels mit einem parametrisierten Konstruktor in Maui
Posted: 25 Aug 2025, 14:53
Ich habe den folgenden Code in einer grundlegenden .NET MAUI -App: < /p>
Meine Hauptseite: < /p>
< /code>
Mein ButtonView: < /p>
< /code>
Mein ButtonViewModel: < /p>
public class ButtonViewModel
{
public IAsyncRelayCommand ButtonCommand { get; }
private readonly IMessageService _messageService;
public ButtonViewModel(IMessageService messageService)
{
_messageService = messageService;
ButtonCommand = new AsyncRelayCommand(ShowMessage);
}
private async Task ShowMessage()
{
await _messageService.ShowPopupAsync();
}
}
< /code>
ButtonView und ButtonViewModel befinden sich nicht im selben Projekt wie die Hauptseite. Ich kann auch so etwas nicht tun: < /p>
public ButtonView() : this(App.Current.Services.GetService())
< /code>
Da sich ButtonView nicht im Projekt befindet, in dem sich die App befindet (und ich kann keine Referenz hinzufügen, da es eine Referenz gibt). Lösung ohne kommerzielle Bibliothek.
Vielen Dank für Ihre Hilfe! < /p>
Meine Hauptseite: < /p>
< /code>
Mein ButtonView: < /p>
< /code>
Mein ButtonViewModel: < /p>
public class ButtonViewModel
{
public IAsyncRelayCommand ButtonCommand { get; }
private readonly IMessageService _messageService;
public ButtonViewModel(IMessageService messageService)
{
_messageService = messageService;
ButtonCommand = new AsyncRelayCommand(ShowMessage);
}
private async Task ShowMessage()
{
await _messageService.ShowPopupAsync();
}
}
< /code>
ButtonView und ButtonViewModel befinden sich nicht im selben Projekt wie die Hauptseite. Ich kann auch so etwas nicht tun: < /p>
public ButtonView() : this(App.Current.Services.GetService())
< /code>
Da sich ButtonView nicht im Projekt befindet, in dem sich die App befindet (und ich kann keine Referenz hinzufügen, da es eine Referenz gibt). Lösung ohne kommerzielle Bibliothek.
Vielen Dank für Ihre Hilfe! < /p>