.net Class Konstruktoren (Class Constructor s)

Einer Klasse ohne Konstruktor wird vom Compiler (MSIL) immer ein Defaultkonstruktor hinzugefügt. public class ClassTestConstructor { } Wenn man von dieser Klasse den MSIL (Intermediate Language Code) anschaut hat diese Klasse einen Default Konstruktor ohne Parameter. ClassTestConstructor() Wird dieser Klasse ein Konstruktor hinzugefügt: public class ClassTestConstructor {  public ClassTestConstructor(int value)  {   //   // my Constructor   //  } } erhält diese Klasse beim Compilieren nach MSIL keinen DefaultKonstruktor mehr. KEIN ClassTestConstructor() Daraus folgt: IMMER einen Default Konstruktor schreiben. Evtl. leer lassen. Wenn dieser nicht sichtbar sein soll -> private machen! MSIL anschauen mit: ildasm oder .net Reflector von Lutz Roeder

Best Practices für ADO.NET. --- Data Access Application Block for .NET v2

The Data Access Application Block is a .NET component that contains optimized data access code that will help you call stored procedures and issue SQL text commands against a SQL Server database. Nur mit SQL Server... Download details: Data Access Application Block for .NET v2

.NET Tools: Reflector + Add-Ins

Reflector: class browser for .NET components .NET Reflector Add-Ins: Home Various usefull addIns for reflector: MutantDesign.ManagedAddIns ClassView CodeModelView DelphiLanguage FileDisassembler SourceView Reflector Addins

SuspendLayout Bug Problem

Mein Problem: Ich möchte zur Laufzeit ein Panel mit Textboxen füllen. Aber man sieht wie sich jede Textbox aufbaut, obwohl vor Füllen Form+Panel.SupendLayout() aufgerufen wird und danach ResumeLayout(). Laut MSDN: The layout logic of the control is suspended until the ResumeLayout method is called. Komisch nur dass im InitializeComponent() genau das gleiche gemacht wird, dort aber sieht man den Aufbau der Textboxen nicht. Lösung: (mittels pinvoke)  [DllImport("user32", CharSet = CharSet.Auto)]  private extern static IntPtr SendMessage(IntPtr hWnd, int msg, int wParam, IntPtr lParam);   // Stop redrawing:   SendMessage(panelContainer.Handle, WM_SETREDRAW, 0, IntPtr.Zero);   // Stop sending of events:   eventMask = SendMessage(panelContainer.Handle, EM_GETEVENTMASK, 0, IntPtr.Zero);   // *** Controls hinzufügen usw.... ***   // turn on events   SendMessage(panelContainer.Handle, EM_SETEVENTMASK, 0, eventMask);   // turn on redrawing   SendMessage(panelContainer.Handle, WM_SETREDRAW, 1, IntPtr.Zero); ODER:  [DllImport("user32.dll")]  public static extern bool LockWindowUpdate(IntPtr hWndLock);   LockWindowUpdate(panelContainer.Handle);   // *** Controls hinzufügen usw.... ***   LockWindowUpdate(IntPtr.Zero); gefunden auf: Use LockWindowUpdate to get flicker-free RichTextBox update

Schnittstellen und Interfaces GUTER Artikel

11 Schnittstellen 11.1 Ein einfaches Beispiel 11.2 Arbeiten mit Schnittstellen 11.3 Der as-Operator 11.4 Schnittstellen und Vererbung 11.5 Entwurfsrichtlinien 11.6 Mehrfachimplementierung 11.7 Auf Schnittstellen basierende Schnittstellen In Kapitel 11.5 findet man wann man Interfaces und wann abstrakte Objekte verwenden soll. Unterschied, Vorteile .... C# - Galileo OpenBook Schnittstellen Interfaces

Direct3D Tutorial für .net und c#

Direct3D Tutorial für .net und c# Download DirectX SDK from the Microsoft Website if you are getting error in VS.NET ( Build Solution ) The referenced component Microsoft.DirectX could not be found. The referenced component Microsoft.DirectX.Direct3D could not be found. Achtung vor Kompilieren: DirectX SDK herunterladen! sonst kommt in Visual Studio die Fehlermeldung: The referenced component Microsoft.DirectX could not be found. The referenced component Microsoft.DirectX.Direct3D could not be found. DirectX WebSite DirectX Downloads

Artikel über Unicode Zeichensätze Encodings MUST READ für jeden Entwickler

Joel on Software - The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)

Web Services Resources

Eine Menge an Web Service Resources! 3 Leaf: Web Services Resources

Usefull Tool in daily .net developing

With this simple tool its very easy to test some lines of code. Without starting the Visual Studio Monster. SnippetCompiler App

Sprachen Benchmark Vergleich

Java ist schnell in der Ausführung! Siehe Vergleich Abgesehen von den trigonometrischen Funktionen, die wahrscheinlich nicht effizient implementiert wurden. Nine Language Performance Round-up: Benchmarking Math & File I/O - OSNews.com

GarbageCollector Test; Wann dir der GC augerufen.

Tip: Programmatischer Aufruf durch System.GC.Collect(); möglich. ------------------------------------------------------------------------------------ using System; using System.Collections; public class GarbageCollector {   private int m_intValue;   public GarbageCollector(int intValue)   {    this.m_intValue = intValue;    Console.Out.WriteLine("Object Constructor : " + intValue);   }   ~GarbageCollector()   {    Console.Out.WriteLine("Object Destructor : " + this.m_intValue);   }   public static void Main()   {    for(int intCounter=0; intCounter<100000; intCounter++)    {     GarbageCollector obj = new GarbageCollector(intCounter);    }   } } --------------------------------- Garbage Collector-Grundlagen und Tipps zur Leistung

Latest Posts

Popular Posts