Изменение свойства в компоненте Razor @ref не обновляет его использование в элементе HTML.C#

Место общения программистов C#
Ответить
Anonymous
 Изменение свойства в компоненте Razor @ref не обновляет его использование в элементе HTML.

Сообщение Anonymous »

Здесь новичок в Blazor.
У меня есть очень простой компонент Razor, у которого есть свойство с именем Paragraph, которое используется HTML элемент:

Код: Выделить всё

@Paragraph
@code {
public string Paragraph { get; set; } = "initial value";
}
В родительском компоненте я использую этот компонент (с именем Foo) и изменяю свойство Paragraph в OnAfterRender:

Код: Выделить всё


@code {
private Foo? _foo;

protected override void OnAfterRender(bool firstRender)
{
if (firstRender)
{
if (_foo is not null)
{
_foo.Paragraph = "Changed";
}
}
}
}
Однако на самом деле это ничего не дает; Я все еще вижу абзац «начальное значение», а не «Изменено». Фактически, строка кода _foo.Paragraph = "Changed"; выполняется, но я не вижу никаких изменений.
Я также пытался вызвать StateHasChanged() для родительского элемента после изменения свойства Paragraph, но на самом деле это ничего не изменило.
Есть ли техническая причина, по которой абзац не изменяется на Изменено? Я видел множество подобных вопросов, но не нашел решения, которое решило бы мою проблему.

Подробнее здесь: https://stackoverflow.com/questions/790 ... -html-elem
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»