За главным окном приложения появляется всплывающее окно безопасности Windows
Я использую API-интерфейсы Windows 10 "Паспорт" и "Окно Hello" в своем приложении WPF.
bool keyCredentialAvailable = await KeyCredentialManager.IsSupportedAsync();
if (keyCredentialAvailable)
{
KeyCredentialRetrievalResult keyCreationResult = await KeyCredentialManager.RequestCreateAsync("Hi", KeyCredentialCreationOption.ReplaceExisting);
}
RequestCreateAsync
Метод открывает всплывающее окно, которое запрашивает биометрические или пин-код. Который виден на скриншоте в задней части MainWindow.
У меня нет никаких ссылок на это всплывающее окно, что я могу принести его впереди. Кроме того, я вызываю этот метод в моем главном окне Loaded
метод, чтобы подтвердить, что главное окно загружено полностью.
Проблема с позиционированием всплывающих окон
2 ответа
Я подал на Github проблему с проектом Microsoft C ++ / WinRT, который я использую для доступа к тому же API, и столкнулся с проблемой.
https://github.com/microsoft/cppwinrt/issues/999#issuecomment-897675623
Нет решения, но «Обычно это происходит, когда родительское окно установлено неправильно». Я понятия не имею, как правильно установить родительское окно в этом случае, поскольку API не предоставляет никаких дескрипторов во всплывающем окне.
Сначала проверьте, является ли ваша функция асинхронной.
private async void SignInPassport()
{
bool keyCredentialAvailable = await KeyCredentialManager.IsSupportedAsync();
if (keyCredentialAvailable)
{
KeyCredentialRetrievalResult keyCreationResult = await KeyCredentialManager.RequestCreateAsync("Hi",KeyCredentialCreationOption.ReplaceExisting);
}
}
если это не решит вашу проблему, попробуйте этот microsoft-passport-login