vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Anwendungsbeispiel 
Autor: Manfred X
Datum: 28.05.15 06:23

Public Class frmDynCtl
 
    'Liste der Parameter
    Dim pil As New List(Of ParameterInfo)
 
 
    Private Sub frmDynCtl_Load(sender As System.Object, _
                    e As System.EventArgs) Handles MyBase.Load
 
        Dim control_height As Integer = 50
        Dim control_size As New Size(150, 30)
        Dim label_size As New Size(80, 30)
 
        'Parameter_Infos erstellen und auflisten
        pil.Add(New ParameterInfo _
                    ("TBO1_Name", ParameterInfo.ParamType.Text, _
                    "TBO1_Value", _
                    ParameterInfo.ControlType.TextBox, _
                    New Point(100, 20), control_size, _
                    New Point(10, 20), label_size))
 
        pil.Add(New ParameterInfo _
                    ("TBO2_Name", ParameterInfo.ParamType.Double, 5247.15, _
                    ParameterInfo.ControlType.TextBox, _
                    New Point(100, 20 + control_height), control_size, _
                    New Point(10, 20 + control_height), label_size))
 
        pil.Add(New ParameterInfo _
                    ("LBO1_Name", ParameterInfo.ParamType.TextArray, _
                     New String() {"LBO1_Item1", "LBO1_Item2", "LBO1_Item3"}, _
                    ParameterInfo.ControlType.ListBox, _
                    New Point(100, 20 + control_height * 2), control_size, _
                    New Point(10, 20 + control_height * 2), label_size))
 
        pil.Add(New ParameterInfo _
                    ("CBO1_Name", ParameterInfo.ParamType.DoubleArray, _
                     New Double() {10.7, 12.65, 3.561}, _
                    ParameterInfo.ControlType.Combobox, _
                    New Point(100, 20 + control_height * 3), control_size, _
                    New Point(10, 20 + control_height * 3), label_size))
 
        pil.Add(New ParameterInfo _
                    ("BTN1_Name", ParameterInfo.ParamType.Text, "BTN1_Value", _
                    ParameterInfo.ControlType.Button, _
                    New Point(100, 20 + control_height * 4), control_size, _
                    New Point(10, 20 + control_height * 4), label_size))
 
 
        'Das ContainerControl 
        Dim pan As New Panel With _
            {.Parent = Me, .Top = 10, _
             .Width = 300, .Height = control_height * 5, _
             .BackColor = Color.LightGray}
 
        'benötigte Controls für die ParameterInfos erstellen
        'und mit den Eventhandler-Routinen kombinieren
        For Each pi As ParameterInfo In pil
            Dim ctl As Control = pi.CreateControl(pan)
 
            If TypeOf ctl Is ComboBox Then
                Dim cbo As ComboBox = DirectCast(ctl, ComboBox)
                AddHandler cbo.SelectedIndexChanged, _
                           AddressOf Selectedindex_changed
            ElseIf TypeOf ctl Is TextBox Then
                Dim tbo As TextBox = DirectCast(ctl, TextBox)
                AddHandler tbo.TextChanged, AddressOf text_changed
            Else
                AddHandler ctl.Click, AddressOf Ctl_click
            End If
        Next pi
 
    End Sub
 
    Public Sub Ctl_click(ByVal sender As Object, e As EventArgs)
 
        Dim ctl As Control = DirectCast(sender, Control)
        MsgBox(ctl.Name & " wurde gedrückt")
 
    End Sub
 
 
    Public Sub Selectedindex_changed(ByVal sender As Object, e As EventArgs)
 
        Dim cbo As ComboBox = DirectCast(sender, ComboBox)
        MsgBox("Index " & cbo.SelectedIndex.ToString & " wurde ausgewählt")
 
    End Sub
 
    Public Sub text_changed(ByVal sender As Object, e As EventArgs)
 
        Dim tbo As TextBox = DirectCast(sender, TextBox)
        MsgBox("Neuer Text: " & tbo.Text)
 
    End Sub
End Class


Beitrag wurde zuletzt am 28.05.15 um 06:25:43 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Steuerelement zur Laufzeit generieren1.308JuergenW27.05.15 15:29
Jagged Array945Manfred X27.05.15 16:06
Re: Jagged Array833JuergenW27.05.15 21:43
Klasse 'ParameterInfo'878Manfred X28.05.15 06:21
Anwendungsbeispiel835Manfred X28.05.15 06:23
Re: Anwendungsbeispiel776JuergenW28.05.15 10:25
Re: Anwendungsbeispiel786JuergenW01.06.15 12:55
Re: Anwendungsbeispiel827Manfred X01.06.15 13:29
Re: Anwendungsbeispiel789JuergenW01.06.15 13:56
Re: Anwendungsbeispiel801Manfred X01.06.15 14:57

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel