vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

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

VB.NET - Ein- und Umsteiger
Re: VB-Software-Archidektur und Problem mit User Controls ? 
Autor: Manfred X
Datum: 05.12.11 16:13

Hallo!

Ich habe das Formular ein wenig erweitert.

Es wird eine GroupBox verwendet, um die
Buttons, die jeweils ein UC rufen, aufzunehmen (Container).

Es gibt 6 Buttons und 6 zugeordnete UCs.

Da Du offenbar viele Controls zu verwalten hast,
bietet sich die Verwendung generischer List(Of Control) an.

Die Buttons werden durch das jeweils gerufene UC
verdeckt (GroupBox unsichtbar) und nach dem Schliessen
des UC wird die GroupBox wieder sichtbar.

Public Class frmFürUC
 
  Dim ucArea As New Size(200, 200)
  Dim ucLoc As New Point(30, 20)
 
  Dim uclist As New List(Of UserControl1)
  Dim btnList As New List(Of Button)
 
  Dim btnGroup As New GroupBox With _
      {.Parent = Me, .Location = ucLoc, .Size = ucArea}
 
  Private Sub frmFürUC_Load(ByVal sender As System.Object, _
      ByVal e As System.EventArgs) Handles MyBase.Load
 
     Me.Height = ucLoc.Y + ucArea.Height + 30
     Me.Width = ucLoc.X + ucArea.Width + 10
 
     For i As Integer = 0 To 5
 
       Dim uc As New UserControl1 With _
       {.Headline = "Usercontrol Nummer " & CStr(i)}
 
       With uc
          .Parent = Me : .Location = ucLoc : .Size = ucArea 
          .Tag = CStr(i) : .Visible = False
       End With
 
       AddHandler uc.Closed, AddressOf ucClosed_Click
       uclist.Add(uc)
 
       Dim btn As New Button With {.Parent = btnGroup, _
          .Top = i * 30 + 10, .Left = 5, _
          .Width = ucArea.Width - 10, .Height = 26, _
          .Text = "Zeige UC " & CStr(i)}
       btn.Tag = CStr(i)
 
       AddHandler btn.Click, AddressOf btn_click
       btnList.Add(btn)
 
    Next i
  End Sub
 
  Private Sub ucClosed_Click(ByVal sender As System.Object, _
      ByVal e As System.EventArgs)
 
     btnGroup.Visible = True
 
  End Sub
 
  Private Sub btn_click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs)
 
    Dim id As Integer = CInt(CType(sender, Button).Tag)
    btnGroup.Visible = False
    uclist(id).Visible = True
 
  End Sub
 
End Class
MfG
Manfred
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
VB-Software-Archidektur und Problem mit User Controls ?1.719carepicha04.12.11 16:40
Re: VB-Software-Archidektur und Problem mit User Controls ?1.259Manfred X04.12.11 17:33
Re: VB-Software-Archidektur und Problem mit User Controls ?1.189carepicha04.12.11 18:48
Re: VB-Software-Archidektur und Problem mit User Controls ?1.194Manfred X04.12.11 19:00
Re: VB-Software-Archidektur und Problem mit User Controls ?1.163carepicha04.12.11 19:21
Re: VB-Software-Archidektur und Problem mit User Controls ?1.163Manfred X04.12.11 20:05
Re: VB-Software-Archidektur und Problem mit User Controls ?1.190ModeratorDaveS04.12.11 17:40
Re: VB-Software-Archidektur und Problem mit User Controls ?1.158carepicha04.12.11 21:54
Re: VB-Software-Archidektur und Problem mit User Controls ?1.260Manfred X04.12.11 22:41
Re: VB-Software-Archidektur und Problem mit User Controls ?1.151carepicha05.12.11 14:50
Re: VB-Software-Archidektur und Problem mit User Controls ?1.280Manfred X05.12.11 16:13
Re: VB-Software-Archidektur und Problem mit User Controls ?1.188carepicha07.12.11 20:21
Re: VB-Software-Archidektur und Problem mit User Controls ?1.128ModeratorFZelle08.12.11 13:35

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-2025 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