| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | | | PNY wird von NVIDIA zum Händler des Jahres gewählt – zum dritten Mal in Folge, eine Pressemitteilung
|
Autor
|
Thema: Intellisense erweitern (849 mal gelesen)
|
MichaelKlein Mitglied
Beiträge: 17 Registriert: 28.11.2008 Mein System: AutoCAD 2008 / ObjectARX / VisualStudio 2008 Standard
|
erstellt am: 15. Apr. 2009 10:46 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich programmiere unter VB.Net (Visual Studio 2008) und habe folgende Frage. Wenn man eine Variable als boolean definiert dann bietet Intellisense beim Zuweisen von Werten nach dem "=" die Werte "True" und "False" automatisch zur Auswahl an. z.B: dim a as boolean a = (an dieser Stelle bietet mir die Entwicklungsumgebung "True/False" as Dropdown an) Diese Funktionalität hätte ich gerne auch bei anderen Objekten. Z.B. möchte ich bei einem String(-ähnlichen Objekt) aus den Werten "Verzinkt", "Beschichtet", "Edelstahl" wählen können. Das würde Fehler durch Falscheingaben deutlich verringern und man hätte immer die erlaubten Werte im Blick. Kann man ein Objekt entsprechend definieren ? Vielen Dank für eure Hilfe
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 15. Apr. 2009 10:57 <-- editieren / zitieren -->
Hi Michael, Zitat: möchte ich bei einem String(-ähnlichen Objekt) aus den Werten "Verzinkt", "Beschichtet", "Edelstahl" wählen können
...Du kannst auch VisualStudio selbst programmieren, aber empfehlen tu ich das sicher nicht. Wie sollte denn VS jetzt erkennen, dass nicht bei jedem String-Typ die obige Auswahl kommt? Von der Programmierung her sehe ich das auch kritisch, immer gleiche Texte 'händisch' zuzuweisen. Die (aus meiner Sicht) sinnvolle Methode wäre, ein Array oder eine Collection mit den Werten zu machen und im Code dann auf das jeweilige Item zuzugreifen und nicht den String hardcoded zu vergeben. Damit hast Du die Textwerte nur an einer Stelle definiert, sind nur an einer Stelle zu modifizieren (z.B. Du musst Deine Applikation auf eine andere Sprache umbauen, ist nicht gut, wenn man dann 100mal 'Beschichtet' austauschen muss). Code: 'Deklaration Dim tMat() as String = new String() {"Verzinkt", "Beschichtet", "Edelstahl"} '...und dann im Code Dim tStr as String = tMat(1) '...
- alfred - ------------------ www.hollaus.at |
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 15. Apr. 2009 11:31 <-- editieren / zitieren --> Unities abgeben: Nur für MichaelKlein
Zitat: Original erstellt von MichaelKlein: Hallo, ich programmiere unter VB.Net (Visual Studio 2008) und habe folgende Frage. Wenn man eine Variable als boolean definiert dann bietet Intellisense beim Zuweisen von Werten nach dem "=" die Werte "True" und "False" automatisch zur Auswahl an. z.B:dim a as boolean a = (an dieser Stelle bietet mir die Entwicklungsumgebung "True/False" as Dropdown an) Diese Funktionalität hätte ich gerne auch bei anderen Objekten. Z.B. möchte ich bei einem String(-ähnlichen Objekt) aus den Werten "Verzinkt", "Beschichtet", "Edelstahl" wählen können. Das würde Fehler durch Falscheingaben deutlich verringern und man hätte immer die erlaubten Werte im Blick. Kann man ein Objekt entsprechend definieren ? Vielen Dank für eure Hilfe
Hm, wäre ein typisches beispiel eines Enum Verzinkt, beschichtet, Edelstahl sollte niemals nicht Inhalt einer variable sein, sondern immer ein reprenstierender Long-Wert. z.B.: VB6 Enum Material Verzinkt=1 Edelstahl=2 Beschichtet=3 end enum Dim a as Material a=Verzinkt
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Ehrenmitglied Verm.-Ing.
Beiträge: 1526 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign MapGuide autodesk Topobase 2-2014 VS6, VS.net 2010
|
erstellt am: 15. Apr. 2009 13:52 <-- editieren / zitieren --> Unities abgeben: Nur für MichaelKlein
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|