devxlogo

WinForms Controls—Creating Control Arrays in VB.NET

WinForms Controls—Creating Control Arrays in VB.NET

ne of the VB6 features that are no longer supported in VB.NET is the automated creation of control arrays by simply copying an existing control as many times as required into an array.

There is existing literature in MSDN which illustrates how to create control arrays at run time, but this may not be a suitable approach in all cases.

In particular, if the developer is able to specify the required controls at design time, then the problem becomes of how to add the desired controls to an array.

The Windows Application Derived Classes

The primary aim of the derived classes is to extend the abstract base classes by implementing the abstract event handler methods. In addition they can contain any auxiliary methods called by the event handlers. In practice, the derived classes contain any application specific logic that we want to keep out of the abstract classes which thus remain fully generic.

Each derived class inherits from the corresponding abstract base class as follows:

Inherits libCtlArray.clsTxtArray

Each derived class contains one or two constructors, depending on which container controls are used in the client application.

e)     Constructor # 1 caters for controls located on Windows Forms

f)        Constructor # 2 caters for controls located on Windows User Control

In addition, the constructors contain three parameters to identify the array items

g)     Control Prefix string [eg. strText]

h)      Array identifier string [eg. strArr]

The derived class constructor instantiates the corresponding base class which, as we saw in the preceding section, populates the arrays.

‘CONSTRUCTOR # 2 – USED IF CONTROLS HOSTED ON A USER CONTROL

Public Sub New(ByRef UserCtl As UserControl, ByVal strTxt As String,_

devx-admin

Share the Post: