Member 69072 Ответов: 1

Как сделать кнопку blazor, которая передает параметр?


Я уже давно работаю над этим"https://www.codeproject.com/Articles/5264915/Explore-Blazor-WebAssembly-use-custom-style-call-e#ptwwwcicpagafwai-и в основном заставили его работать.

В этом проекте есть страница Working.razor, которая использует 4 кнопки для вызова метода, каждый из которых имеет свой параметр, пример приведен ниже:
Пять
Я жестко закодировал метод Generate(5), который заставляет страницу делать то, для чего она создана, то есть генерировать фиктивные данные для вставки в базу данных IBM Cloudant. Так что после нескольких модификаций все работает, за исключением этих 4 кнопок.

Один я уже пробовал
Один
<button class="w3-button w3-large w3-amber" @onClick="Generate(1)">One</button>

который тоже ничего не делает, и несколько вариаций на тему
@onClick="@(() => Generate(5))"
Это последнее дает ошибку "не удается преобразовать лямбда-выражение в тип 'object', потому что оно не является типом делегата".

Я хотел бы понять, как эти кнопки должны были работать и как сделать кнопку, которая будет успешно передавать целое число в метод Generate.

Что я уже пробовал:

Я опубликовал аналогичный вопрос в комментариях к статье некоторое время назад, ответа нет.

Это безнадежно, мой код кнопки продолжает исчезать. Пожалуйста, смотрите статью.

Sandeep Mewara

А вы пробовали:
<button onclick=@(() => Mymethod(MyParam)) />

Ссылка: https://github.com/dotnet/aspnetcore/issues/15956

Member 69072

Почти. Там было две проблемы, у меня был верхний регистр c в onclick был моей ошибкой. Синтаксическая ошибка была в оригинале. У вас отсутствует знак@.
``` Один```

Sandeep Mewara

Хорошо знать, что она разрешилась!

1 Ответов

Рейтинг:
2

Member 69072

```

<button class="w3-button w3-large w3-amber" @onclick = "@(() => Generate(1))">One</button>
```