|
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
#nullable disable
namespace Microsoft.Build.Framework.XamlTypes
{
/// <summary>
/// Represents the schema of an enumeration property.
/// </summary>
/// <remarks> This class inherits the <see cref="BaseProperty.Default"/> property from the <see cref="BaseProperty"/> class.
/// That property does not make sense for this property. Use the <see cref="EnumValue.IsDefault"/> property on the
/// <see cref="EnumValue"/> instead to mark the default value for this property. </remarks>
public sealed class DynamicEnumProperty : BaseProperty
{
#region Constructor
/// <summary>
/// constructor
/// </summary>
public DynamicEnumProperty()
{
// Initialize collection properties in this class. This is required for
// proper deserialization.
ProviderSettings = new List<NameValuePair>();
}
#endregion
#region Properties
/// <summary>
/// The provider that produces the list of possible values for this property. Must be set.
/// </summary>
public string EnumProvider { get; set; }
/// <summary>
/// A provider-specific set of options to pass to the provider.
/// </summary>
[SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly", Justification = "Concrete collection types required for XAML deserialization")]
public List<NameValuePair> ProviderSettings { get; set; }
#endregion
}
}
|