@using MudBlazor @implements IDisposable @if (ViewModel != null) {
@{ var imageUri = ViewModel.ImageAnalysis?.ToBase64DataUri(); } @if (!string.IsNullOrEmpty(imageUri)) { @ViewModel.ImageName }
@ViewModel.ImageName
Previous @(ViewModel.OriginalView ? "Analysis" : "Original") Next @if (ViewModel.LearnButtonVisible) { Learn }
}
Close
@code { [CascadingParameter] private IMudDialogInstance MudDialog { get; set; } = null!; [Parameter] public ErrorPreviewVM? ViewModel { get; set; } protected override void OnParametersSet() { if (ViewModel != null) ViewModel.PropertyChanged += OnPropertyChanged; } private async void OnPropertyChanged(object? sender, System.ComponentModel.PropertyChangedEventArgs e) { await InvokeAsync(StateHasChanged); } private void OnPrevious() => ViewModel?.PreviousImageCommand.Execute(null); private void OnNext() => ViewModel?.NextImageCommand.Execute(null); private void OnSwitchView() => ViewModel?.SwitchViewCommand.Execute(null); private async Task OnLearn() { if (ViewModel != null) await ViewModel.Learn(); } private void Close() => MudDialog.Close(); public void Dispose() { if (ViewModel != null) ViewModel.PropertyChanged -= OnPropertyChanged; } }