| File: System\ComponentModel\Design\DesignerActionItem.cs | Web Access |
| Project: src\winforms\src\System.Windows.Forms.Design\src\System.Windows.Forms.Design.csproj (System.Windows.Forms.Design) |
// 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; using System.Collections.Specialized; using System.Text.RegularExpressions; namespace System.ComponentModel.Design; /// <summary> /// A menu command that defines text and other metadata to describe a targeted task that can be performed. /// Tasks typically walk the user through some multi-step process, such as configuring a data source for a component. /// Designer tasks are shown in a custom piece of UI (Chrome). /// </summary> public abstract partial class DesignerActionItem { private IDictionary? _properties; public DesignerActionItem(string? displayName, string? category, string? description) { DisplayName = displayName is null ? null : SanitizeNameRegex().Replace(displayName, ""); Category = category; Description = description; } [GeneratedRegex(@"\(\&.\)")] private static partial Regex SanitizeNameRegex(); public bool AllowAssociate { get; set; } public virtual string? Category { get; } public virtual string? Description { get; } public virtual string? DisplayName { get; } public IDictionary Properties => _properties ??= new HybridDictionary(); public bool ShowInSourceView { get; set; } = true; }