, , InitializeComponent . , ( ).
, , , InitializeComponent, , , , . , , , , .
- . :
protected void CreateLabels(int num)
{
Labels = new Label[num];
for(int i=0; i<num; i++)
{
Labels[i] = new Label();
this.Controls.Add(Labels[i]);
}
}
InitializeComponent , num.
InitializeComponent. , , .
, , , InitializeComponent . , . BaseControlCodeDomSerializer, System.ComponentModel.Design.Serialization.CodeDomSerializer, Serialize, :
public override object Serialize(IDesignerSerializationManager manager, object value)
{
BaseControl aCtl = value as BaseControl;
if (aCtl == null)
return null;
if (aCtl.Labels == null)
return null;
int num = aCtl.Labels.Length;
CodeStatementCollection stats = new CodeStatementCollection();
stats.Add(new CodeSnippetExpression("CreateLabels(" + num.ToString() + ")"));
return stats;
}
, Serializer :
[DesignerSerializer("MyControls.BaseControlCodeDomSerializer", typeof(CodeDomSerializer))]