' Clone a control ' expO1 Control Public Function CloneControl(toControl As System.Windows.Forms.Control) As System.Windows.Forms.Control Dim loClone As System.Windows.Forms.Control = Nothing ' Initialization loClone = DirectCast(Activator.CreateInstance(toControl.[GetType]()), System.Windows.Forms.Control) ' For each property For Each [property] As System.ComponentModel.PropertyDescriptor In System.ComponentModel.TypeDescriptor.GetProperties(toControl) ' If this property is serializable If [property].PropertyType.IsSerializable Then [property].SetValue(loClone, [property].GetValue(toControl)) End If Next Return loClone End FunctionThis is the code that is cloning and the previous code:
' Those two are equivalent NoCountryTax2 = CloneControl(NoCountryTax) NoProvinceTax2 = CloneControl(NoProvinceTax) If False Then NoCountryTax2.DataSource = NoCountryTax.DataSource NoCountryTax2.DisplayMember = NoCountryTax.DisplayMember NoCountryTax2.ValueMember = NoCountryTax.ValueMember NoCountryTax2.SelectedIndex = NoCountryTax.SelectedIndex NoProvinceTax2.DataSource = NoProvinceTax.DataSource NoProvinceTax2.DisplayMember = NoProvinceTax.DisplayMember NoProvinceTax2.ValueMember = NoProvinceTax.ValueMember NoProvinceTax2.SelectedIndex = NoProvinceTax.SelectedIndex End IfThis gives this error: