Der Designer ist für die Anwendung keine "Black Box", sondern kann in vielen Bereichen beeinflusst werden. Neben dem Sperren von Funktionen und Menüpunkten können eigene Elemente hinzugefügt werden, die Berechnungen, Aktionen oder Ausgaben in die Funktionslogik verlegen.
Dreh- und Angelpunkt für die Designereinschränkung ist die Eigenschaft DesignerWorkspace des ListLabel-Objekts. Diese bietet die in der folgenden Tabelle aufgelisteten Eigenschaften für die Designereinschränkung:
Property | Function |
ProhibitedActions | Diese Eigenschaft dient dazu, einzelne Menüpunkte aus dem Designer zu entfernen. |
ProhibitedFunctions | Diese Eigenschaft dient dazu, einzelne Funktionen aus dem Designer zu entfernen. |
ReadOnlyObjects | Diese Eigenschaft dient dazu, Objekte im Designer gegen Bearbeitung zu sperren. Die Objekte sind weiterhin sichtbar, können aber innerhalb des Designers nicht bearbeitet oder gelöscht werden. |
Das folgende Beispiel zeigt, wie der Designer so angepasst werden kann, dass kein neues Projekt mehr angelegt werden kann. Zudem wird die Funktion ProjectPath$ entfernt und das Objekt "Demo" gegen Bearbeitung gesperrt:
Der Designer kann um eigene Funktionen (DesignerFunctions), Objekte (DesignerObjects) und Aktionen (DesignerActions) erweitert werden. Eigene Funktionen können dafür verwendet werden, komplexere Berechnungen in die Applikation zu verlegen bzw. Funktionalitäten nachzurüsten, die im Standardumfang des Designers nicht vorhanden sind. Beispiele für eigene Objekte oder Aktionen sowie eine weitere eigene Funktion zeigt das mitgelieferte .NET Beispiel Designer Extension Sample.
Im Designer können verschiedene Sprachen angemeldet werden, um damit später Projektdateien einfach lokalisieren zu können. Wie die Übersetzungen durchgeführt werden können zeigt Projektdateien im Designer lokalisieren. Hier werden nun die drei Sprachen Englisch, Deutsch und Französisch angemeldet und können später im Designer vom Anwender einfach im Menü gewechselt werden: