File: DataAnnotations\DisplayFormatAttribute.cs
Project: ndp\fx\src\xsp\system\DataAnnotations\System.ComponentModel.DataAnnotations.csproj (System.ComponentModel.DataAnnotations)
using System.Diagnostics.CodeAnalysis;
 
namespace System.ComponentModel.DataAnnotations {
    /// <summary>
    /// Allows overriding various display-related options for a given field. The options have the same meaning as in BoundField.
    /// </summary>
    [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field, AllowMultiple = false)]
    [SuppressMessage("Microsoft.Performance", "CA1813:AvoidUnsealedAttributes", Justification = "We want users to be able to extend this class")]
    public class DisplayFormatAttribute : Attribute {
        /// <summary>
        /// Gets or sets the format string
        /// </summary>
        public string DataFormatString { get; set; }
 
        /// <summary>
        /// Gets or sets the string to display when the value is null
        /// </summary>
        public string NullDisplayText { get; set; }
 
        /// <summary>
        /// Gets or sets a value indicating whether empty strings should be set to null
        /// </summary>
        public bool ConvertEmptyStringToNull { get; set; }
 
        /// <summary>
        /// Gets or sets a value indicating whether the format string should be used in edit mode
        /// </summary>
        public bool ApplyFormatInEditMode { get; set; }
 
#if !SILVERLIGHT
        /// <summary>
        /// Gets or sets a value indicating whether the field should be html encoded
        /// </summary>
        public bool HtmlEncode { get; set; }
#endif
 
        /// <summary>
        /// Default constructor
        /// </summary>
        public DisplayFormatAttribute() {
            this.ConvertEmptyStringToNull = true; // default to true to match behavior in related components
 
#if !SILVERLIGHT
            this.HtmlEncode = true; // default to true to match behavior in related components
#endif
        }
    }
}