Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Frage zur Eigenschaft DesignMode
Flo80
myCSharp.de - Member



Dabei seit:
Beiträge: 107

Themenstarter:

Frage zur Eigenschaft DesignMode

beantworten | zitieren | melden

Hi,

ich wollt beim einem eigenen UserControl ein Paar Eigenschaften erst zur Laufzeit setze.
Das wollte ich so lösen.


// Konstruktor
public MeinUserControl()
{
if(!DesignMode)
{
// Eigenschaften setzen
}
}

Visual Studio ruft diesen Code trozdem auf, wenn ich noch am designen bin.
Was einer was da schief geht?
Oder ist diese Eigenschaft für diesen Zweck ungeeignet?

Vielen Dank

Mfg Flo
private Nachricht | Beiträge des Benutzers
FZelle
myCSharp.de - Experte



Dabei seit:
Beiträge: 9.999

beantworten | zitieren | melden

Das funktioniert nicht in DLL's.
private Nachricht | Beiträge des Benutzers
Traumzauberbaum
myCSharp.de - Member



Dabei seit:
Beiträge: 512

beantworten | zitieren | melden

Ich würde eher sagen, es funktioniert nicht in Konstruktoren. Erst nach dem Konstruktor kann für das Control der DesignMode eingeschaltet werden, weil Site zu dem Zeitpunkt noch nicht gesetzt ist.

Ich hab zu dem Thema zwei Lösungsideen gefunden:

1. Den Code aus dem Konstruktor nach Init verschieben
2. LicenseManager.UsageMode == LicenseUsageMode.Designtime abfragen

Wobei die Erste eigentlich die Schönere ist.

Ansonsten mal nach DesignMode und Constructor googeln.
e.f.q.

Aus Falschem folgt Beliebiges
private Nachricht | Beiträge des Benutzers
Peter Bucher
myCSharp.de - Experte

Avatar #jVxXe7MDBPAimxdX3em3.jpg


Dabei seit:
Beiträge: 5.940
Herkunft: Zentralschweiz

beantworten | zitieren | melden

Hallo FZelle
Zitat
Original von FZelle
Das funktioniert nicht in DLL's.
Wieso nicht und wo denn sonst?
Diese Eigenschaft ist ja nur für Bibliotheken und UserControls gedacht.
Bei ASP.NET Komponenten funktioniert das wunderbar.

<edit>
Zitat
Original von Traumzauberbaum
Ich würde eher sagen, es funktioniert nicht in Konstruktoren. Erst nach dem Konstruktor kann für das Control der DesignMode eingeschaltet werden, weil Site zu dem Zeitpunkt noch nicht gesetzt ist.
Alles klar
Normalerweise benutzt man diese Eigenschaft im Konstruktor eher nicht.
</edit>


Gruss Peter
--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

- https://peterbucher.ch/ - Meine persönliche Seite
- https://fpvspots.net/ - Spots für FPV Dronenflüge
private Nachricht | Beiträge des Benutzers
Flo80
myCSharp.de - Member



Dabei seit:
Beiträge: 107

Themenstarter:

beantworten | zitieren | melden

Danke für die Antworten.

Da hab ich wieder was gelernt.

mfg FLO
private Nachricht | Beiträge des Benutzers
ChristianDaniel
myCSharp.de - Member



Dabei seit:
Beiträge: 28
Herkunft: Monzel

DesignMode abfragen im Compact Framework?

beantworten | zitieren | melden

Hallo, und sorry, dass ich das alte Thema nochmal aufgreife, aber hat vieleicht auch jemand eine Lösung, wie man sowas im CompactFramework realiesieren kann?

Ich habe das Problem, das Form_Load Ereignisse auch im Designer aufgerufen werden, und das gibt deftikge Fehler :-(. Leider habe Ich dort weder das "DesignMode" Property noch den "LicenseManager" zur Verfügung.

Gibt es da eine Allgemeine Verfahrensweise?

Grüßle,
Christian
private Nachricht | Beiträge des Benutzers
Khalid
myCSharp.de - Experte

Avatar #avatar-2534.gif


Dabei seit:
Beiträge: 3.511
Herkunft: Hannover

beantworten | zitieren | melden

Es gibt auch ein DesignMode im CF, es liegt nur woanders


if (this.Site != null && this.Site.DesignMode)
{
  // Im DesignMode
}
Gilt für CF 2.0
"Jedes Ding hat drei Seiten, eine positive, eine negative und eine komische." (Karl Valentin)
private Nachricht | Beiträge des Benutzers
ChristianDaniel
myCSharp.de - Member



Dabei seit:
Beiträge: 28
Herkunft: Monzel

beantworten | zitieren | melden

Super! Dankeschön!!
private Nachricht | Beiträge des Benutzers