Я создаю демонстрацию Blazor ProgressBar и пытаюсь переместить некоторый код за пределы компонента Blazor в класс C# (называемый ProgressManager), чтобы я мог абстрагировать код и сделать ProgressManager каскадным параметром для ProgressBar component.
Я знаю, как установить параметр eventcallback для компонента, подобного этому:
[Parameter]
public EventCallback<string> UpdateNotification { get; set; }
Что я не знаю, как это сделать, - установить этот же тип свойства для C# класс.
У меня есть этот код в моем методе запуска:
public void ShowProgressSimulation()
{
// Create a ProgressManager
this.ProgressManager = new ProgressManager();
this.ProgressManager.UpdateNotificaiton = Refresh;
this.ProgressManager.Start();
// Refresh the UI
StateHasChanged();
}
Часть, которая работает: this.ProgressManager.UpdateNotificaiton = Refresh;
Ошибка:
Невозможно преобразовать группу методов 'Refre sh' в тип без делегата 'EventCallback'. Вы намеревались вызвать метод?
Я также пытался: this.ProgressManager.UpdateNotificaiton += Refresh;
И это приводит к тому, что EventCallback не может быть применен к MethodGroup (перефразируя).
Спасибо