Monthly Archives: April 2015
Vom Projekt bis Fertigstellung – Teil 1: Projektbeginn, Programmablaufplan (PAP)
Neben der eigentlichen Arbeit eines Entwicklers am Programmcode, sind vor allem für größere Projekte Diagramme, Notizen, und Pläne von sehr hoher Bedeutung und werden nur zu gerne unterschätzt. Vernachlässigt man dieses, verliert den Durchblick und am Ende die Motivation überhaupt weiter zu machen. Was ist also wichtig, wenn man ein Projekt plant? 1. Ziele setzen Wichtig […]
Methode mit unendlich vielen Parameter mit params
Hat man den Fall, dass man an eine Methode unendlich viele Parameter übergeben möchte oder die Anzahl vielleicht unbekannt ist, so bietet C# die Möglichkeit über params und ein Array unendlich viele Parameter zu hinterlegen. Ein Beispiel:
1 2 3 4 5 6 7 |
public int AddParams(params int[] numbers) { int sum = 0; foreach (var number in numbers) sum += number; return sum; } |
Zu beachten ist, dass der Typ unbedingt ein array [] sein muss.
PHP Variablen
Die Variablen in PHP sind zu mindestens bei der Initialisierung Typen undefiniert. Es ist so, als würde man unter C# ausschließlich mit dem var arbeiten. Weiter kann die Variable entweder local, global oder static sein. Ist eine Variable außerhalb von Scopes {} definiert, so ist diese global. Kann aber nicht in den Scopes verwendet werden. […]
PHP 5.6.8 unter IIS und Windows 8
Mein nächstes Ziel ist die Webkomponente der Programmierung kennen zu lernen. Dazu gehört neben HTML, CSS, JavaScript auch die serverseitige Sprache PHP. Erstes Ziel ist das Einrichten von PHP auf dem IIS (Man könnte natürlich den einfacheren Weg über XAMP gehen oder den alternativen Weg über den Webserver Apache). Ich wollte das einfach unter IIS […]
HttpListenerContext decode/encode Umlaute
Liest man die Url aus dem HttpListenerContext, die Umlaute wie äöü enthält, so sieht das ungefähr so aus: aus süß wird s%FC%df. Abhilfe schaft da die Klasse HttpUtility:
1 2 3 4 5 6 |
public static string decodeURL(HttpListenerContext context) { int codeNumber = context.Request.ContentEncoding.WindowsCodePage; return HttpUtility.UrlDecode(context.Request.RawUrl, Encoding.GetEncoding(codeNumber)); } |
möchte man zurück encodieren macht man einfach :
1 2 3 4 5 6 |
public static string encodeURL(HttpListenerContext context) { int codeNumber = context.Request.ContentEncoding.WindowsCodePage; return HttpUtility.UrlEncode("süß", Encoding.GetEncoding(codeNumber)); } |
Button Color aus Hexwert ändern
1 |
cmdMyButton.Background = (SolidColorBrush)(new BrushConverter().ConvertFrom("#28C757")); |
um Button zurück zu setzen:
1 |
cmdMyButton.ClearValue(Button.BackgroundProperty); |
guter einfacher ColorPicker: http://www.colorpicker.com/
Referenztypen, Wertetypen
Stack und Heap sind Teil des Arbeitsspeichers, die zu mindestens unter C# vom Kompiler automatisch verwaltet wird. Beim Stack (dt. Stapel) werden die Daten quasi aufeinander gelegt. Wenn Speicher freigegeben werden kann, so wird dies auch von oben heraus getan (LIFO Prinzip). Durch dieses Prinzip ist der Stack sehr schnell in seiner Arbeitsweise. Verlässt der […]
Aus einer anderen Klasse, aus einem anderen Thread in MainWindow schreiben
Möchte man aus einer anderen Klasse, aus einem anderen Thread etwas in die Mainklasse Steuerelemente schreiben, stößt man auf 2 Probleme: 1. Man kann aus Thread 2 nicht in Thread 1 schreiben 2. Man kann nicht, ohne ein Objekt angelegt zu haben nicht in die Steuerelemente schreiben. Abhilfe schafft ein kleiner Trick. MainWindow.cs:
1 2 3 4 5 6 |
internal static MainWindow main; internal object Status { get { return lstInfo.Items.CurrentItem; } set { Dispatcher.Invoke(new Action(() => { lstInfo.Items.Add(value); })); } } |
1 2 3 4 5 |
public MainWindow() { InitializeComponent(); main = this; } |
[…]
Schnell mal ein Bild einfügen
Dazu einfach ein Bild in den Designer ziehen. Möchte man im Code-Behind, dann das Bild ersetzen, gibt man der Image-Control einen Namen und führt folgendes aus:
1 |
_Image.Source = new BitmapImage(new Uri(@"/Images/Warning.png", UriKind.RelativeOrAbsolute)); |
TCP / IP – Teil 3: HTTP – Protokoll
Das HTTP (Hypertext Transfer Protocol) baut auf das TCP auf, bildet in seiner Übertragung jedoch weitreichende eigene Konzepte, als das die Übertragung über TCP/IP. Ebenfalls ist das HTTP ist heute das Standardprotokoll um Webseiten im Webbrowser darzustellen, welches sich laut W3C im 1.1 Standard befindet. HTTP/2 befindet sich aber bereits in Entwicklung. Eine Ausführung sieht im […]
Login