vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 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
Lösung Teil 2 
Autor: bauer
Datum: 27.04.12 13:38

''' <summary>
''' Allgemeiner Designer fuer zusammengesetzte UserControls mit mehreren 
' exportierten Snaplines 
''' </summary>
''' <remarks></remarks>
Public Class UserControlCustomDesigner
 
    Inherits System.Windows.Forms.Design.ControlDesigner
 
    Public Overloads Overrides ReadOnly Property SnapLines() As IList
        Get
 
            'SnapLines aus der Basisklasse 
            Dim SnapLinesExtended As IList = MyBase.SnapLines
 
            'Untersuche ob diejenige Klasse zu welcher der Designer gehoert auf 
            ' das Interface SnapLinesProvider zu casten 
            Dim SnapLinesProvider As ISnapLinesProvider = TryCast(Me.Control, _
              ISnapLinesProvider)
 
            If SnapLinesProvider Is Nothing Then
            Else
 
                'Gehe ueber alle SnpaableControls aus dem Basiscontrol drueber   
                For Each Control As Control In _
                  SnapLinesProvider.SnapableControls
 
                    'Versuche je Control den Designer zu finden 
                    Dim Designer As IDesigner = TypeDescriptor.CreateDesigner( _
                      Control, GetType(IDesigner))
 
                    If Designer Is Nothing Then
                    Else
 
                        'Initialisiere den Designer 
                        Designer.Initialize(Control)
 
                        Using Designer
 
                            Dim BoxDesigner As ControlDesigner = TryCast( _
                              Designer, ControlDesigner)
 
                            If BoxDesigner Is Nothing Then
                            Else
 
                                For Each Line As SnapLine In _
                                  BoxDesigner.SnapLines
                                    If Line.SnapLineType = _
                                    SnapLineType.Baseline Then
 
                                        'Nimm die bestehende SnapLine / 
                                        ' BaseLine eines Untercontrols aus dem 
                                        ' UserControl und mache darus eine neue 
                                        'SnapLine bezogen auf das UserControl 
                                        SnapLinesExtended.Add(New SnapLine( _
                                          SnapLineType.Baseline, Line.Offset + _
                                          Control.Top, Line.Filter, _
                                          Line.Priority))
                                        Exit For
                                    End If
                                Next
 
                            End If
 
                        End Using
                    End If
 
                Next
 
            End If
 
            Return SnapLinesExtended
 
        End Get
 
    End Property
End Class
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
User Control mit Designersupport1.277bauer27.04.12 09:32
Re: User Control mit Designersupport961bauer27.04.12 13:11
Lösung Teil 1939bauer27.04.12 13:37
Lösung Teil 2945bauer27.04.12 13:38
Lösung Teil 3906bauer27.04.12 13:39
Lösung Teil 4956bauer27.04.12 13:42

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