| |
VB.NET - FortgeschritteneUserControl Property verstecken | | | Autor: dj.tommy | Datum: 11.10.19 22:18 |
| Hallo Leute!
Ich habe ein kleines Problem.
Ich habe ein eigenes Usercontrol geschrieben funktioniert super, nur soll MaximumSize, MinimumSize, Size, Width nicht im Designer nicht geändert werden können.
Wie stell ich es an, das das Projekt funktionstüchtig bleibt, wenn die Property gesperrt bzw. versteckt ist?
Ich habe schon folgendes ausprobiert
Variante 1
Public Class SeparatorDesigner
Inherits ControlDesigner
'Allows only horizontal/vertical resizing
Public Overrides ReadOnly Property SelectionRules() As SelectionRules
Get
Return SelectionRules.LeftSizeable Or SelectionRules.RightSizeable _
Or SelectionRules.Visible Or SelectionRules.Moveable
End Get
End Property
Protected Overrides Sub PostFilterProperties(ByVal properties As _
System.Collections.IDictionary)
Dim Ausnahme() As String = { "MaximumSize", "MinimumSize", "Size", _
"Width"}
Dim propertyClaer As New List(Of String)
For Each obj As String In properties.Keys
If Not Ausnahme.Contains(obj) Then
propertyClaer.Add(obj)
End If
Next
For Each obj As String In propertyClaer
properties.Remove(obj)
Next
MyBase.PostFilterProperties(properties)
End Sub
End Class Funktioniert zwar alles, was ich so mit bekommen habe, aber unter Designer, wenn man das Steuerelement verkleiner oder vergrößert, die eine vergebene Min und Maximum hat, verhaltet sich unter Design fehlerhaft. Sehe Bild.
Variante 2
<DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)>
<Browsable(False)>
Public Overloads Property MaximumSize As Size
Get
End Get
Set(MaximumSize As Size)
'Me.MaximumSize = MaximumSize
End Set
End Property
<DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)>
<Browsable(False)>
Public Overloads Property MinimumSize As Size
Get
End Get
Set(MinimumSize As Size)
End Set
End Property Ich sehe unter Eigenschafte nicht MinimumSize und MaximumSize, was auch gut ist, aber das Steuerelement ist sehr klein und lässt dich unbegrenzt verkleiner und vergrößern was wiederum schlecht ist
Die Property MaximumSize, wenn ich unter Set Me.MaximumSize = MaximumSize eintrage, hat unter dem Me.MaximumSize eine grüne welle.
Ich denke, so kann ich den Code auch nicht schreiben, damit MaximumSize funktion aufrechterhalte, da ist sicher ein Konflikt
Habt ihr ein Tipp oder eine Lösung für mein Problem? | |
Re: UserControl Property verstecken | | | Autor: dj.tommy | Datum: 12.10.19 06:21 |
| Guten Morgen!
Ich habe mein Problem gelöst.
Ich habe unter PostFilterProperties Width heraus genommen, damit es nicht entfernt wird, und diese Property geschrieben
<BrowsableAttribute(False)>
Public Overloads Property Width As Integer
Get
Return 0
End Get
Set(Width As Integer)
End Set
End Property Jetzt habe ich was ich möchte, und zwar rechts unter Eigenschaften sind MaximumSize, MinimumSize, Size und Width nicht mehr auf gelistet, und das verschieben im Design ist nicht mehr fehlerhaft | |
| 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 |
|
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats sevZIP40 Pro DLL
Zippen und Unzippen wie die Profis!
Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Weitere Infos
|
|
|
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
|
|