vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 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 - Fortgeschrittene
Re: IContainerControl.ActiveControl 
Autor: rub
Datum: 14.05.09 15:48

Ok, dann geht das so nicht.

Habe das Ganze mal als Komponente umgesetzt (ohne Interface)
für Jeden, der's brauchen kann.
PS: Die Property prop_Form muss natürlich nach dem Einfügen der Komponente ausgewählt werden.
PSS: Der Code muss einfach nur in eine neue Komponente eingefügt werden.
#Region "Deklaration"
        Private m_LastActiveControls As New List(Of _
          System.Windows.Forms.Control)
        Private m_Form As System.Windows.Forms.Form = Nothing
        Private m_MaxControls As Integer = 10
#End Region
 
#Region "Propertys"
 
        Public ReadOnly Property prop_LastActiveControls() As List(Of _
          System.Windows.Forms.Control)
            Get
                Return m_LastActiveControls
            End Get
        End Property
 
        Public Property prop_MaxControls() As Integer
            Get
                Return m_MaxControls
            End Get
            Set(ByVal value1 As Integer)
                m_MaxControls = value1
            End Set
        End Property
 
        Public Property prop_Form() As System.Windows.Forms.Form
            Get
                Return m_Form
            End Get
            Set(ByVal value1 As System.Windows.Forms.Form)
                m_Form = value1
 
                If Me.DesignMode = False Then
                    If Not m_Form Is Nothing Then
                        AddHandler CType(m_Form, _
                          System.Windows.Forms.Form).Load, AddressOf Form_Load
                    End If
                End If
 
            End Set
        End Property
 
#End Region
 
#Region "Funktionen"
 
        Public Sub AddhandlerForControls(ByVal curControl As _
          System.Windows.Forms.Control)
            If Not curControl Is Nothing Then
                If Not TypeOf (curControl) Is System.Windows.Forms.Form Then
                    AddHandler curControl.GotFocus, AddressOf control_GotFocus
                End If
 
                For i As Integer = 0 To curControl.Controls.Count - 1
                    AddhandlerForControls(curControl.Controls(i))
                Next
            End If
        End Sub
 
        Private Sub control_GotFocus(ByVal sender As Object, ByVal e As _
          System.EventArgs)
            If m_LastActiveControls.Count > m_MaxControls Then
                m_LastActiveControls.RemoveAt(0)
            End If
 
            If m_LastActiveControls.Count > 0 Then
                If Not sender Is m_LastActiveControls( _
                  m_LastActiveControls.Count - 1) Then
                    m_LastActiveControls.Add(sender)
                End If
            Else
                m_LastActiveControls.Add(sender)
            End If
        End Sub
 
        Private Sub Form_Load(ByVal sender As System.Object, ByVal e As _
          System.EventArgs)
            Call AddhandlerForControls(m_Form)
        End Sub
 
#End Region
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
IContainerControl.ActiveControl1.206rub14.05.09 11:02
Re: IContainerControl.ActiveControl748ModeratorDaveS14.05.09 14:08
Re: IContainerControl.ActiveControl736rub14.05.09 15:48

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