Событие UIMouseEventArgs на стороне сервера Blazor не работает

У меня есть приложение Blazor на стороне сервера с последней версией, но ниже код, который предполагает переключение текста при нажатии кнопки, по какой-то причине не работает

@page "/Session12/EventHandleDemo"

    <h3>EventHandleDemo</h3>
<button @onclick="@ToggleDisplayText"> Toggle Text </button>

<p>@DisplayText</p>

@code {

    private string DisplayText { get; set; } = "Hello!";

    private void ToggleDisplayText(UIMouseEventArgs args)
    {

        DisplayText = (DisplayText.Equals("Hello!"))
            ? "Hellow world!"
            : "Hello!";

    }
}

Он показывает мне ошибку в следующей строке кода private void ToggleDisplayText(UIMouseEventArgs args) для UIMouseEventArgs, а сообщение об ошибке

У меня последняя версия dotnet --version 3.1.100

Обновление: мой пример работал нормально, когда я заменил событие UIMouseEventArgs на MouseEventArgs. Я должен проверить, поддерживается ли MouseEventArgs в последней версии asp.net blazor или что, поскольку я на данный момент не нашел никакой причины в Google, или в документации может быть упомянуто где-то, мне просто нужно покопаться.


person Learning    schedule 05.01.2020    source источник
comment
devblogs.microsoft.com/aspnet/   -  person Henk Holterman    schedule 05.01.2020
comment
@HenkHolterman, мое обновление вопроса было основано на этой ссылке и другой ссылке на этой ссылке docs.microsoft.com/en-us/aspnet/core/blazor/   -  person Learning    schedule 05.01.2020
comment
UIMouseEventArgs больше не поддерживается. Весь префикс UI был удален.   -  person dani herrera    schedule 05.01.2020
comment
Что ж, это самая последняя документация (когда вы выбираете 3.1 в верхнем левом углу). И я указал на соответствующие примечания к выпуску.   -  person Henk Holterman    schedule 05.01.2020


Ответы (1)


Как упоминалось "dani herrera", используйте MouseEventArgs. И удалите префикс "@" перед вызовом метода "ToggleDisplayText".

@page "/Session12/EventHandleDemo"

<h3>EventHandleDemo</h3>
<button @onclick="ToggleDisplayText"> Toggle Text </button>

<p>@DisplayText</p>

@code {

private string DisplayText { get; set; } = "Hello!";

private void ToggleDisplayText(MouseEventArgs args)
{

    DisplayText = (DisplayText.Equals("Hello!"))
        ? "Hellow world!"
        : "Hello!";

    }
}
person Saar    schedule 06.01.2020