namespace Lithnet.CredentialProvider
{
///
/// Represents a 'v2' user credential tile that implements the functionality of , and includes support for personalized tile, where a single user tile is shown, with multiple logon options grouped within it.
///
/// Inheriting from this class enables you to provide a v2 credential tile. V2 credential tiles were introduced in Windows 8. See the Microsoft documentation on ICredentialProviderCredential2 for more information
///
public abstract partial class CredentialTile2 : CredentialTile
{
///
/// Gets the user represented by this credential tile
///
public CredentialProviderUser User { get; }
///
/// Gets a value indicating if this is a personalized or generic tile
///
public override bool IsGenericTile => this.User == null;
///
/// Gets or sets a value that controls how the generic tile is displayed to the end user.
///
/// This does not apply in scenarios where a personalized tile is provided
public GenericTileDisplayMode GenericTileDisplayMode { get; set; }
///
/// Initializes a generic version 2 credential tile.
///
/// The credential provider that owns this tile.
protected CredentialTile2(CredentialProviderBase credentialProvider) : this(credentialProvider, null) { }
///
/// Initializes a version 2 credential tile for a user.
///
/// The credential provider that owns this tile.
/// The user represented by this tile, or for a generic tile.
protected CredentialTile2(CredentialProviderBase credentialProvider, CredentialProviderUser user) : base(credentialProvider)
{
this.User = user;
}
}
}