У меня есть компонент C #, который имеет два свойства: Property1 и Property2.Property1 - это простое свойство типа int, а Property2 - это список, где T - это пользовательский класс.Property2 имеет установленный атрибут DesignerSerializationVisibility.Content.
Когда свойство Property1 установлено в Designtime, компонент должен сгенерировать количество установленных пользовательских классов.Это работает, но классы не сериализуются в файл Designer.cs.Когда я добавляю пользовательский класс через стандартный редактор коллекций Visual Studio, этот класс сериализуется в файл Designer.cs.
Как я могу заставить Visual Studio также сериализовать созданные классы в файл Designer.cs?
Вот небольшой пример того, что у меня сейчас:
public class TestComponent : Component
{
private int _Count;
public int Count
{
get { return _Count; }
set
{
_Count = value;
Columns.Clear();
for (int i = 0; i < _Count; i++)
{
TestClass tClass = new TestClass();
tClass.Description = "TestClass" + i.ToString();
Columns.Add(tClass);
}
}
}
private List<TestClass> columns = new List<TestClass>();
[EditorBrowsable(EditorBrowsableState.Never)]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public List<TestClass> Columns
{
get { return columns; }
}
}
[ToolboxItem(false), DesignTimeVisible(false)]
public class TestClass : Component
{
private string _Description;
public string Description
{
get { return _Description; }
set { _Description = value; }
}
}