Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8112775
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 6, 20262026-06-06T02:37:14+00:00 2026-06-06T02:37:14+00:00

I have a custom control with a public collection marked as DesignerSerializationVisibility.Content . When

  • 0

I have a custom control with a public collection marked as DesignerSerializationVisibility.Content.

When I add items to the collection using the designer, it adds them to the designer file and assigns all desired values but it gives each element of the collection a generic name, such as MyClass1, MyClass2, etc. I want the “Name” property of each item to become the code name of the item so that I can then access the item by its name in code.

This is the functionality of how a ContextMenuStrip and ToolStrip works. In those cases, the Name property shows up as (Name) in the property grid.

Is there an attribute or something I can use to gain this functionality? Or do I have to write a whole custom designer dialog? If so, what’s an example of the simplest way I could go about achieving this?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-06T02:37:17+00:00Added an answer on June 6, 2026 at 2:37 am

    You can try inheriting from Component to get that feature.

    In this example, I created a class called PanelItem, which will be the class used in my collection by my own Panel class. I added DesignTimeVisible(false) so that it doesn’t populate the component tray in the designer.

    Also, I added a Name property that is hidden from the designer but can be used in code. It seemed to work in my tests:

    [DesignTimeVisible(false)]
    public class PanelItem : Component  {
    
      [DefaultValue(typeof(string), "")]
      public string PanelText { get; set; }
    
      private string name = string.Empty;
    
      [Browsable(false)]
      [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
      public string Name {
        get {
          if (base.Site != null) {
            name = base.Site.Name;
          }
          return name;
        }
        set {
          name = value;
        }
      }
    }
    

    Then my custom panel control:

    public class MyPanel : Panel {
      private List<PanelItem> panelItems = new List<PanelItem>();
    
      [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
      public List<PanelItem> PanelItems {
        get { return panelItems; }
      }
    }
    

    Resulted in:

    enter image description here

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a custom Asp.net control as public class ImageControl : Panel { private
I have written a custom server control which (pseudo-code) looks like public class MyCustomCtrl
I have a custom user control that fires an exception when trying to add
I have a custom control like this: public class CustomControl1 : Control { private
I have a custom control defined in code-behind: Public Class MyControl Inherits Button Private
I have 2 custom controls as defined below: public class Icon : Control {
I have my custom control named FileSelectDialog with Dependency Property: public static readonly DependencyProperty
I have a custom control that has an Items property. I Have applied an
I have a control: DailyHours. That has a collection of custom TimeEdit controls I
I have seen that BindableAttribute is used to decorate public properties in custom controls.

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.