Files
SGU-CredentialProvider/src/Lithnet.CredentialProvider/CredentialTile.ICredentialProviderCredentialWithFieldOptions.cs
T

36 lines
1.1 KiB
C#

using System;
using Lithnet.CredentialProvider.Interop;
namespace Lithnet.CredentialProvider
{
public abstract partial class CredentialTile : ICredentialProviderCredentialWithFieldOptions
{
int ICredentialProviderCredentialWithFieldOptions.GetFieldOptions(uint dwFieldID, out FieldOptions options)
{
options = FieldOptions.None;
try
{
this.logger.LogTrace($"GetFieldOptions: field {dwFieldID}");
if (this.Controls.TryGetControl(dwFieldID, out var instance))
{
options = instance.Options;
this.logger.LogTrace($"GetFieldOptions on [{instance}] returning options {instance.Options}");
return HRESULT.S_OK;
}
this.logger.LogError($"GetFieldOptions failed to find a field match for {dwFieldID}");
return HRESULT.E_FAIL;
}
catch (Exception ex)
{
this.logger.LogError(ex, "GetFieldOptions failed");
return HRESULT.E_FAIL;
}
}
}
}