-
ACHTUNG - NEUES BLOG
Ab sofort steht unter http://devtyr.norberteder.com mein neues Blog zur Verfügung. Dieses Blog wird nicht weiter betreut, bleibt aber erhalten. Neue Eintr%auml;ge erfolgen nur mehr im neuen Blog. Kommentare werden ebenfalls nicht mehr behandelt. Wer weiterhin meinen Einträgen und Aktivitäten folgen möchte, möge bitte RSS-Feeds, Verlinkungen etc. an die neue Location anpassen.
|
Visual Studio 2005: IntelliSense funktioniert nicht mehr
28.08.07 - .NET, Visual Studio Beitrag von Norbert Eder| | Wer sich beispielsweise den ReSharper testhalber installiert, könnte nach der Deinstallation bemerken, dass IntelliSense nicht mehr funktioniert. Hierzu sind folgende Einstellungen zu treffen, damit es wieder verwendet werden kann:
Unter Tools - Options auf Text Editor - C# - General müssen folgende Einträge aktiviert sein:
- Auto list members
- Parameter information
Danach sollte IntelliSense wieder verfügbar sein. Ein anderer Weg könnte ebenfalls zielführend sein: Vor der Deinstallation des ReSharpers in dessen Optionen IntelliSense wieder zurück an Visual Studio geben. Vermutlich sollten dann die oben angeführten Einstellungen nicht mehr getroffen werden.
| | | 5 Kommentare
- 2212 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
Mehrzeiliges Editieren von String-Eigenschaft im Eigenschaften-Fenster
08.08.07 - .NET, WPF, Visual Studio Beitrag von Norbert Eder| | Unter Visual Studio 2005 (.NET 2.0) ist es möglich, Properties des Typs String mehrzeilig zu editieren:
Erstellt man ein benutzerdefiniertes Steuerelement, sollen eigene String-Eigenschaften idealerweise ebenfalls mit dieser Hilfe ausgestattet werden. Hierzu ist ein entsprechendes Attribut zu setzen:
[Localizable(true),
Editor("System.ComponentModel.Design.MultilineStringEditor," +
"System.Design, Version=2.0.0.0, Culture=neutral, " +
"PublicKeyToken=b03f5f7f11d50a3a",
typeof(UITypeEditor))]
public string Description
{
get { return this.DescriptionLabel.Text; }
set { this.DescriptionLabel.Text = value; }
}
Ab sofort bietet das benutzerdefinierte Steuerelement ebenfalls dieses Feature an und mehrzeiliger Text kann bequem eingegeben werden.
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
C#: Entwicklung einer Notiz-Anwendung anhand eines Beispiels
19.07.07 - .NET, Grundlagen, Base Framework, WPF, Datenverwaltung, Visual Studio, Microsoft Office Beitrag von Norbert Eder| | Nachdem ich heute zufällig darüber gestolpert bin, möchte ich diese Artikel-Serie natürlich nicht vorenthalten. Worum geht es konkret:
StickOut ist eine Desktopanwendung für Kurznotizen mit Unterstützung für mehrere Benutzer und Integration in Outlook. Es handelt sich um eine Windows Forms-Anwendung für .NET Framework 2.0, bei der die Kommunikation mit anderen StickOut-Benutzern sowie der Austausch von Kurznotizen über .NET Remoting stattfindet. Der neue IPC-Kanal von .NET Framework 2.0 wird zur Kommunikation zwischen Microsoft Outlook und dem StickOut-Prozess verwendet. Mit dem Outlook-Add-In können Sie von beliebigen Outlook-Objekten Kurznotizen auf dem Desktop erstellen, einschließlich E-Mails, Notizen, Aufgaben, Terminen usw. Es wurde darauf geachtet, den Speicherbedarf einer .NET-Anwendungen maßgeblich zu verringern und einen zügigen und reibungslosen Umgang für den Benutzer zu gewährleisten. Dieser mehrteilige Artikel enthält einen Bericht über die Entstehung, beginnend mit meinem ersten Tag der Anwendungsplanung, hin zu allen nachfolgenden Entwurfs-, Entwicklungs-, Test- und Bereitstellungsphasen. Er zeigt die Fortentwicklung der Anwendung bis hin zu den Komplikationen, die bei den einzelnen Schritten aufgetreten sind. Sie erfahren vieles über .NET-Tricks, Bereitstellungs- und Versionskontrollprobleme, Visual Studio-Tricks und weitere nicht direkt auf die Entwicklung bezogene Tricks, die für Ihre tägliche Entwicklungsarbeit nützlich sein können.
Wer daran Interesse hat, hier die Links zu den einzelnen Teilen dieser Serie:
StickOut: Entstehung einer Kurznotiz-Anwendung in .NET 2.0, Teil 1
StickOut: Entstehung einer Kurznotiz-Anwendung in .NET 2.0, Teil 2
StickOut: Entstehung einer Kurznotiz-Anwendung in .NET 2.0, Teil 3
| | | 10 Kommentare
- 1346 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
.NET BlogBook Ausgabe 3 veröffentlicht
14.07.07 - .NET, Grundlagen, Base Framework, ASP.NET, Visual Studio, Allerlei, SQL Server, Internet, Community Beitrag von Norbert Eder| | Soeben wurde das .NET BlogBook in der Version 3 (oder auch Ausgabe genannt) veröffentlicht. In dieser Ausgabe wurden zahlreiche Unstimmigkeiten und Fehler bereinigt, als auch die Lesbarkeit weiter erhöht. Durch zahlreiche Rückmeldungen von Lesern konnten wir sie weiter an die Bedürfnisse der Leser anpassen.
Wir hoffen auch dieses Mal auf eine positive Resonanz und würden uns über konstruktive Kritik und Meinungen freuen.
Zu finden gibt es das Buch auf der .NET BlogBook Projektseite.
| | | 4 Kommentare
- 1014 mal angesehen
| 1 Trackbacks
| Permalink | Trackback-URL |
Weitere Tunings für Visual Studio 2005
28.06.07 - .NET, Visual Studio Beitrag von Norbert Eder| | Im Beitrag Visual Studio 2005: Refactoring-Performance verbessern habe ich bereits einige Möglichkeiten genannt, Visual Studio 2005 performancemäßig zu verbessern. Hier nun weitere Optionen, die ein schnelleres Arbeiten ermöglichen:
Animationen deaktivieren: Animiertes kann unter Environment -- General -- Animate environment tools abgeschalten werden.
Startverhalten verändern: Unter Visual Studio 2005 schneller starten habe ich bereits gezeigt, wie der Splash-Screen deaktiviert werden kann. Eine weitere Möglichkeit die Performance zu verbessern besteht darin, die Start-Seite zu deaktivieren und Content-Download nicht durchführen zu lassen. Die entsprechenden Einstellungen finden sich unter Environment -- Startup. At Startup einfach auf 'Show empty environment' stellen und 'Download content every' deaktivieren.
Navigation-Bar ausblenden: Die Navigation-Bar zeigt alle in der gerade offenen Sourcecode-Datei enthaltenen Klassen und die dazugehörigen Methoden an. Wer Tools á la ReSharper verwendet, benötigt sie daher nicht und kann sie getrost ausblenden. Wieder ein wenig Performance-Gewinn. Zu finden unter Environment -- Text Editor -- All Languages -> Navigation Bar.
Toolbox und Eigenschaften-Fenster schließen: Wenn nicht benötigt und vor allem bei Formularen mit vielen Steuerelementen empfiehlt es sich, sowohl die Toolbox als auch das Eigenschaften-Fenster zu schließen. Durch das Verstecken werden die Fenster befüllt, daher komplett schließen und bei Bedarf wieder öffnen. Auch so läßt sich ein Performance-Gewinn herbeiführen.
Server-Explorer und Class-View: Wenn nicht benötigt, empfiehlt es sich auch, diese beiden Boxen zu schließen.
Es empfiehlt sich also generell alles zu schließen, das nicht benötigt wird.
| | | 2 Kommentare
- 1271 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
Visual Studio 2005: Refactoring-Performance verbessern
24.06.07 - .NET, Visual Studio Beitrag von Norbert Eder| | Mit zunehmender Projektgröße wird auch das integrierte Refactoring ständig langsamer, bis es schließlich überhaupt nicht mehr verwendbar ist. Äußerst schlimm ist dies bei Web Projekten. Hintergrund ist der, dass so gut wie jeglicher Content für das Refactoring herangezogen wird. Eine Möglichkeit, einzelne Projekte auszuwählen oder bestimmte Teile der Solution nicht mit einzubeziehen ist ebenfalls nicht vorhanden. Dennoch gibt es eine kleine Variante, welche das Refactoring deutlich beschleunigt. Wie in vielen Fällen ist die Lösung über die Registry möglich:
1. Alle offenen Visual Studio 2005 Instanzen schließen
2. regedit starten
3. HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\
CSharp\Options\Editor
4. Neuer Eintrag: "Neuer DWORD-Wert"
5. Dem Eintrag den Namen OpenAllVenusFilesOnRefactor verpassen und den Wert auf 0 belassen
Nach einem Neustart sollte nun das Refactoring deutlich schneller laufen, ASP.NET Pages, Inline .asmx und .asax Code werden nicht mehr berücksichtigt.
Wer die Startzeit von Visual Studio 2005 verbessern möchte, sei auf den Eintrag Visual Studio 2005 schneller starten verwiesen.
Und noch ein Hinweis: Refactoring gibt es auch für Visual Basic 2005. Hierfür einfach Refactor! verwenden.
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Visual Studio 2005: Region-Blöcke per Tastatur auf- und zuklappen
23.06.07 - .NET, Visual Studio Beitrag von Norbert Eder| | Regions sind eine sehr nette Sache, möchte man Methoden, Eigenschaften, Attribute oder andere zusammengehörigen Teile einer Datei in Bereiche unterteilen. Wer nun aber möglichst wenig zur Maus greifen möchte, stellt sich sehr schnell die Frage, wie denn Regions-Blöcke per Tastatur auf- bzw. zugeklappt werden können:
STRG+M STRG+M
Und schon wieder ein Griff weniger zur Maus. Dass es doch tatsächlich immer wieder Tastenkombinationen gibt, die man ständig vergisst ...
| | | 1 Kommentar
- 437 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
Visual Studio 2005: Anpassung Class Template
23.06.07 - .NET, Visual Studio Beitrag von Norbert Eder| | Im Beitrag Visual Studio: Anpassung Class Templates habe ich bereits beschrieben, wie die Klassen-Templates (wird verwendet beim Anlegen einer neuen Klasse) an eigene Bedürfnisse angepasst werden können. Hier nun, wie dies unter Visual Studio 2005 gemacht werden kann.
Die Class-Templates können unter
C:\Programme\Microsoft Visual Studio
8\Common7\IDE\ItemTemplatesCache\CSharp\1033\Class.zip\
gefunden werden (liegen also in einem anderen Pfad, als unter Visual Studio 2003). Im darüberliegenden Verzeichnis finden sich übrigens die Templates für die AssemblyInfo, Form, den Installer und alle anderen bekannten Templates. Diese sind weiters in die jeweiligen Programmiersprachen unterteilt, wodurch auch VB.NET-Entwickler ihre Templates schnell finden sollten.
Standardmäßig sieht das Class-Template so aus:
using System;
using System.Collections.Generic;
using System.Text;
namespace $rootnamespace$
{
class $safeitemrootname$
{
}
}
So manchem stört das fehlende public, sowie auch - in einigen Fällen - vordefinierte Regions. Durch folgende Anpassung der Vorlage gehört dieser Missstand der Vergangenheit an:
using System;
using System.Collections.Generic;
using System.Text;
namespace $rootnamespace$
{
public class $safeitemrootname$
{
#region Attributes
#endregion
#region Properties
#endregion
#region Private Methods
#endregion
#region Public Methods
#endregion
}
}
So einfach wie diese Erweiterung können auch zusätzliche Namespaces eingetragen werden.
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Tipps zum Debugging
25.05.07 - .NET, Visual Studio Beitrag von Norbert Eder| | Visual Studio 2005 bietet kleine nette Features zum Thema Debuggen an, die nicht sehr häufig von Entwicklern genutzt werden. Dabei können diese kleinen Möglichkeiten das Leben durchaus erleichtern.
Setzen wir an einer bestimmten Stelle im Sourcecode (ich verwende hier ein paar wenige Sourcecode-Zeilen zur Veranschaulichung). Per rechter Maustaste auf den Breakpoint erhalten wir ein Kontextmenü mit einigen hilfreichen Einträgen.
Sehen wir uns den Punkt Condition... genauer an.
Beim Durchlaufen des Sources wird bei jedem Hit des Breakpoints die eingegebene Bedingung überprüft. Trifft diese zu (sofern der Punkt Is true gewählt wurde), wird an dieser Stelle unterbrochen, wie im nächsten Screenshot gut zu sehen ist.
Eine weitere Möglichkeit ist durch den Punkt When Hit... gegeben.
Durch diesen wird ein Einstellungsfenster geöffnet, in dem einige Settings vorgenommen werden können:
So kann bei jedem Hit des Breakpoints eine Message ins Consolen-Fenster geschrieben, ein Makro ausgeführt, oder unterbrochen werden.
Es lohnt sich auf jeden Fall, auch die anderen Punkte näher anzusehen, da bestimmte Features recht oft sinnvoll eingesetzt werden können. Damit läßt sich die Produktivität steigern und der Ärger des Debuggens senken.
Weitere Informationen zum Thema Debuggen:
Visual Studio 2005: Default Browser setzen
Webprojekte mittels Firefox debuggen
Unable to debug: The binding handle is invalid.
| | | Kommentar hinzufügen
- 2 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
Code Analysis als Hilfsmittel
21.05.07 - .NET, Grundlagen, Visual Studio Beitrag von Norbert Eder| | In meinem Beitrag Eigenen Code analysieren hatte ich bereits über Code Analysis berichtet. An dieser Stelle möchte ich diesen wichtigen Part noch einmal in Erinnerung rufen.
Visual Studio besitzt bereits eine integrierte Code Analyse und jede Menge Regeln, die beim Aufruf der Code Analysis aufgerufen werden. Von vielen als störend abgetan, besitzt die regelmäßige Analyse jedoch durchaus seine Berechtigung.
Die Einstellungen zur Analyse können in den Projekteigenschaften vorgenommen werden.
Wird der Compiler-Schalter CODE_ANALYSIS aktiviert, wird die Analyse bei jedem Kompilierungs-Vorgang ausgeführt. Wer dies möchte, kann die Analyse auch manuell starten. Hierzu ist das Kontext-Menü eines Projektes zu öffnen und Run Code Analysis aufzurufen.
In einigen Fällen kann es vorkommen, dass bei Durchsicht des Codes, dieser als korrekt definiert wird, obwohl durch die Code Analyse eine Warnung ausgegeben wurde. Für derartige Fälle kann diese mit Hilfe des SuppressMessage-Attributes (SuppressMessageAttribute) unterdrückt werden.
Ein Beispiel möchte ich an dieser Stelle nicht vorenthalten.
Nun stellt sich eventuell noch die Frage, wofür Code Analysis denn eigentlich gut sein soll und welchen Nutzen man davon hat.
Je nach definierten Regeln (idealerweise sollten alle Regeln aktiviert sein), werden Hinweise auf undokumentierte Stellen gegeben, unsichere Codestellen entdeckt, auf obsolete Klasse hingewiesen und weitere Hilfestellungen gegeben. Vor allem Sourcecode-Kommentare sollte in gesundem Maße durchgeführt werden, auch wenn manche Statistiken behaupten, dass sich die meisten Fehler gerade in gut dokumentierten Stellen befinden bzw. "guter" Sourcecode keiner Dokumentation bedarf. Dennoch sollten derartige Hinweise ernst genommen und Warnungen aus der Analyse gering gehalten werden.
| | | 2 Kommentare
- 767 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL | Zurück Weiter
|
|
|
|
|
|
|