Как предотвратить показ подтверждения в диалоговом окне во время onInitializedAsync в Blazor, когда используется EditConC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как предотвратить показ подтверждения в диалоговом окне во время onInitializedAsync в Blazor, когда используется EditCon

Сообщение Anonymous »

Я использую editContext для отслеживания изменений в форме, и я показываю диалог подтверждения с использованием confirmasync () , если при навигации, которые используются в форме, введены в навигацию.
. />

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

public async Task GetConfirmation()
{
if (ParentForm != null && ParentForm.EditContext.IsModified())
{
return await dialogs.ConfirmAsync("You have unsaved changes. Do you want to leave?", "Confirm", "Leave", "Cancel");
}

return true;
}
В моем компоненте onitializedAsync я называю getUserData () , который загружает пользовательские данные. Но этот метод внутренне вызывает getConfirmation () как часть какой -то логики. Поскольку editcontext.ismodified () возвращает true во время инициализации (вероятно, из -за привязки), диалог отображается при загрузке страницы, что не требуется. образец инициализации страницы и то, как я называю этот метод из родительской формы. < /p>

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


private async Task GetUserData(int userId)
{
if (!await refNavigationConfirm.GetConfirmation())
{
//Some code here
}
}
ограничения:
  • Эта логика разделяется на нескольких страницах, поэтому я не хочу размещать технические обходные пути. />
Как я могу предотвратить показать диалоговое окно подтверждения во время начальной нагрузки данных (например, onInitializedAsync ), но все же запускает его правильно для фактических несарших изменений?

Подробнее здесь: https://stackoverflow.com/questions/795 ... ync-in-bla
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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