Doberenz / Gewinnus | Visual C# 2012 - Kochbuch | E-Book | www.sack.de
E-Book

E-Book, Deutsch, 1538 Seiten

Doberenz / Gewinnus Visual C# 2012 - Kochbuch


1. Auflage 2013
ISBN: 978-3-446-43605-3
Verlag: Carl Hanser Verlag
Format: PDF
Kopierschutz: 1 - PDF Watermark

E-Book, Deutsch, 1538 Seiten

ISBN: 978-3-446-43605-3
Verlag: Carl Hanser Verlag
Format: PDF
Kopierschutz: 1 - PDF Watermark



VISUAL C# 2012
- Für Einsteiger, Fortgeschrittene und Profis
- Mit Lernbeispielen und Lösungen, nach denen Sie anderswo vergeblich suchen
- 670 Seiten Bonuskapitel
- Alle Beispiele aus dem Buch unter: www.doko-buch.de
Dieses Kochbuch bietet Ihnen 500 qualitativ hochwertige Rezepte, die zum sofortigen Ausprobieren und Experimentieren einladen.
Der inhaltliche Bogen spannt sich vom simplen Einsteigerbeispiel bis hin zu komplexen Profi-Techniken. Anfänger erhalten ein umfangreiches Praktikum zu den Grundlagen der .NET-Programmierung mit Visual C# 2012, dem Profi liefert es fortgeschrittene Programmiertechniken zu allen wesentlichen Einsatzgebieten der Windows- und Webprogrammierung unter Visual Studio 2012.
Den Schwerpunkt dieser Neuauflage stellen die Rezepte zur Entwicklung von Apps für Windows 8 dar.
Die Rezepte sind - in 19 Themengruppen übersichtlich angeordnet und mit treffsicheren Titeln ausgestattet - schnell auffindbar. Das abschließende Kapitel des Buches demonstriert in größeren Beispielapplikationen verschiedene Programmiertechniken im Zusammenhang.
AUS DEM INHALT:
C#-Sprachfeatures, OOP, LINQ // Dateien & Dateisystem // Asynchrone Programmierung & Task Parallel Library // WPF & XAML // Windows Store Apps & WinRT // XML, ADO.NET, DataSet, MS Event Pattern // Konsolen-Anwendungen // GUI-Programmierung mit Windows Forms // Web-Applikationen mit ASP.NET & Silverlight // Verteilen von Anwendungen

Walter DOBERENZ und Thomas GEWINNUS haben sich als Entwickler, Dozenten und Fachbuchautoren für Microsoft- und Borland-Entwicklerwerkzeuge einen Namen gemacht. Ihre Fachbücher sind seit Jahren als Standardwerke etabliert.

Doberenz / Gewinnus Visual C# 2012 - Kochbuch jetzt bestellen!

Weitere Infos & Material


1;Visual C# 2012 - Kochbuch
;4
1.1;Inhaltsverzeichnis
;6
1.2;Vorwort;26
1.3;1 Kleiner C#-Anfängerkurs;30
1.3.1;R1 Das EVA-Prinzip anwenden;30
1.3.2;R2 Ein Array definieren und initialisieren;34
1.3.3;R3 Die Arraygröße zur Laufzeit ändern;37
1.3.4;R4 Berechnungen in eine Methode auslagern;39
1.3.5;R5 Konsolenprogramm nach Windows portieren;43
1.3.6;R6 Werte in einer ListBox anzeigen;47
1.4;2 Sprache;52
1.4.1;R7 Anwendungen von Visual Basic nach C# portieren;52
1.4.2;R8 String in Array kopieren und umgekehrt;59
1.4.3;R9 Ein Byte-Array in einen String konvertieren;61
1.4.4;R10 Strukturvariablen in Arrays einsetzen;62
1.4.5;R11 Eine einzelne Spalte aus einer Matrix kopieren;65
1.4.6;R12 In einer ArrayList suchen und sortieren;67
1.4.7;R13 In einer generischen Liste suchen und sortieren;69
1.4.8;R14 Zufallszahlen erzeugen;70
1.4.9;R15 Iterationen verstehen (Quadratwurzel);72
1.4.10;R16 Iterationen verstehen (Goldener Schnitt);75
1.4.11;R17 Funktionen rekursiv aufrufen;76
1.4.12;R18 Zeichenketten mittels StringBuilder addieren;77
1.4.13;R19 Strings vergleichen;81
1.4.14;R20 Eine Stoppuhr programmieren;84
1.4.15;R21 Zeitangaben runden;86
1.4.16;R22 Zeitdifferenzen ermitteln;88
1.4.17;R23 Datumsdifferenzen berechnen;89
1.4.18;R24 Das Alter in Jahren bestimmen;92
1.4.19;R25 Die Monatsdifferenz berechnen;93
1.4.20;R26 Das Datum beweglicher Feiertage berechnen;95
1.4.21;R27 Ersten und letzten Wochentag des Monats ermitteln;97
1.4.22;R28 Den Wochentag eines Datums ermitteln;98
1.4.23;R29 Abschreibungen auf Monatsbasis berechnen;100
1.4.24;R30 Reisespesen berechnen;103
1.4.25;R31 Geldbeträge kaufmännisch runden;106
1.4.26;R32 Fehler bei mathematischen Operationen behandeln;107
1.4.27;R33 Mit Potenzen und Wurzeln rechnen;111
1.4.28;R34 Einen Delegate definieren und anwenden;112
1.4.29;R35 Mit Delegates sortieren (Bubblesort);114
1.4.30;R36 Referenz-/Wertetypen als Parameter übergeben;117
1.4.31;R37 LINQ im Schnelldurchgang erlernen;120
1.4.32;R38 Strings mit LINQ abfragen und filtern;123
1.4.33;R39 Duplikate aus einer Liste oder einem Array entfernen;124
1.4.34;R40 Arrays mit LINQ initialisieren;127
1.4.35;R41 Arrays per LINQ mit Zufallszahlen füllen;130
1.4.36;R42 Einen String mit Wiederholmuster erzeugen;131
1.4.37;R43 Mit LINQ Zahlen und Strings sortieren;133
1.4.38;R44 Mit LINQ Collections von Objekten sortieren;134
1.4.39;R45 Ergebnisse von LINQ-Abfragen in ein Array kopieren;137
1.4.40;R46 Sortieren mit IComparable/IComparer;137
1.4.41;R47 Mit async und await asynchron programmieren;141
1.4.42;R48 Tipps & Tricks;144
1.5;3 OOP/Komponenten;146
1.5.1;R49 Überladene versus überschriebene Methoden;146
1.5.2;R50 Aggregation und Vererbung gegenüberstellen;149
1.5.3;R51 Objekte serialisieren;155
1.5.4;R52 Ein wieder verwendbares Formular erstellen;158
1.5.5;R53 Von einem Formular erben;161
1.5.6;R54 Von vorhandenen Steuerelementen erben;166
1.5.7;R55 Eine Komponente zur Farbauswahl entwickeln;170
1.5.8;R56 Eine Digitalanzeige-Komponente programmieren;174
1.5.9;R57 OOP beim Kartenspiel erlernen;179
1.5.10;R58 Eine Klasse zur Matrizenrechnung entwickeln;184
1.5.11;R59 Interop-Typen in die Assembly einbetten;189
1.5.12;R60 Das Observer-Pattern anwenden (Variante 1);192
1.5.13;R61 Das Observer-Pattern anwenden (Variante 2);195
1.5.14;R62 Einen Objektbaum in generischen Listen abspeichern;200
1.6;4 Windows Forms-Anwendungen;208
1.6.1;R63 Das Startformular festlegen;208
1.6.2;R64 Beim Programmstart eine Abfrage ausführen;210
1.6.3;R65 Das Schließen des Formulars verhindern;211
1.6.4;R66 Mit mehreren Formularen arbeiten;212
1.6.5;R67 MDI-Applikation und Menüs erstellen;217
1.6.6;R68 Formulare im Formular anzeigen;220
1.6.7;R69 Zur Laufzeit ein Steuerelement erzeugen;223
1.6.8;R70 Steuerelemente-Array per Code erzeugen;225
1.6.9;R71 Auf ein Control-Array zugreifen;227
1.6.10;R72 Mit der TextBox arbeiten;230
1.6.11;R73 In einer TextBox suchen;232
1.6.12;R74 Nur Zahleneingaben zulassen;233
1.6.13;R75 Die Schrifteigenschaften einer TextBox ändern;235
1.6.14;R76 Dezimalkomma in Dezimalpunkt umwandeln;237
1.6.15;R77 Tastatureingaben für mehrere TextBoxen filtern;238
1.6.16;R78 RadioButtons und CheckBoxen einsetzen;240
1.6.17;R79 Die ListBox kennen lernen;242
1.6.18;R80 Die ComboBox erkunden;245
1.6.19;R81 Objekte in ListBox/ComboBox anzeigen;248
1.6.20;R82 Mit der CheckedListBox arbeiten;251
1.6.21;R83 Die Maus abfragen;254
1.6.22;R84 Das TableLayoutPanel einsetzen;255
1.6.23;R85 Mit einem Kontextmenü arbeiten;259
1.6.24;R86 Einfache Datenbindung praktizieren;261
1.6.25;R87 Anwendungseinstellungen an Controls binden;264
1.6.26;R88 Mit Drag & Drop arbeiten;269
1.6.27;R89 Mit dem ErrorProvider arbeiten;273
1.6.28;R90 Eingaben validieren;276
1.6.29;R91 Das NotifyIcon-Control in der Taskleiste einsetzen;279
1.6.30;R92 Ein Array in einer ListView anzeigen;283
1.6.31;R93 Eine ListView mit dem Inhalt eines DataSets füllen;285
1.6.32;R94 In der ListView nach beliebigen Spalten sortieren;290
1.6.33;R95 Das Microsoft Chart-Control verwenden;295
1.6.34;R96 WPF-Komponenten mit dem ElementHost anzeigen;298
1.6.35;R97 Die Einstellungen des User-Interface sichern;302
1.6.36;R98 Drag & Drop im Steuerelemente-Array realisieren;307
1.6.37;R99 Programmierung einer mehrspaltigen ListBox;314
1.6.38;R100 Die Tabulatorbreite verändern;318
1.7;5 Windows Presentation Foundation;320
1.7.1;R101 WPF-Anwendung im Fullscreen-Mode starten;320
1.7.2;R102 Fenster auf einem bestimmten Screen anzeigen;321
1.7.3;R103 Das Hauptfenster festlegen und ändern;323
1.7.4;R104 Einen Splash-Screen erzeugen und anzeigen;324
1.7.5;R105 Eine WPF-Browseranwendung erstellen;326
1.7.5.1;Größe und Titel des Browserfensters festlegen;326
1.7.5.2;Größe der Browseranwendung anpassen;327
1.7.5.3;Ein-/Ausblenden der Navigationsschaltflächen;329
1.7.5.4;Navigation zwischen einzelnen Seiten (Pages);329
1.7.5.5;Verwendung von Cookies;331
1.7.5.6;Abfrage von QueryStrings;333
1.7.5.7;Übergabe von Page-Instanzen per Konstruktor;334
1.7.5.8;Eine Instanz der Seite erhalten;335
1.7.5.9;Einen Ersatz für Window realisieren;335
1.7.6;R107 Grafiken in WPF skaliert anzeigen;339
1.7.7;R108 Grafiken aus Dateien zur Laufzeit laden;341
1.7.8;R109 Grafiken aus Ressourcen zur Laufzeit zuweisen;343
1.7.9;R110 Sonderzeichen im Content darstellen;346
1.7.10;R111 Eigene Schriftarten in die Anwendung einbetten;347
1.7.11;R112 WPF-Controls trotz Layout frei positionieren;349
1.7.12;R113 Textformatierungen im Content realisieren;350
1.7.13;R114 Irreguläre Window-Formen erzeugen;351
1.7.14;R115 Einfache Zeichnungen zur Laufzeit ausgeben;353
1.7.15;R116 Kommandozeilenparameter auswerten;355
1.7.16;R117 Ein Video anzeigen und steuern;357
1.7.17;R118 Schatteneffekt für Controls realisieren;359
1.7.18;R119 Eine TextBox beim Fokuserhalt optisch markieren;362
1.7.19;R120 Den TextBox-Inhalt beim Fokuserhalt markieren;363
1.7.20;R121 Den Pfad der aktuellen Anwendung bestimmen;365
1.7.21;R122 Formulare per Reflection auswählen und anzeigen;365
1.7.22;R123 Datenbindung für Anwendungseinstellungen;367
1.7.23;R124 Deutsches Datumsformat anzeigen;368
1.7.24;R125 Einen Timer in WPF nutzen;370
1.7.25;R126 Das User-Interface am Task-Ende aktualisieren;371
1.7.26;R127 Das User-Interface aus dem Task aktualisieren;373
1.7.27;R128 Collections in Hintergrundthreads füllen;376
1.7.28;R129 Einen Ribbon in meine Anwendung einbinden;381
1.7.29;R130 Das WPF-Chart-Control verwenden;391
1.8;6 Silverlight;394
1.8.1;R131 Den Fokus auf das Silverlight-Plugin setzen;394
1.8.2;R132 Zugriff auf die Zwischenablage realisieren;395
1.8.3;R133 Drag & Drop-Unterstützung realisieren;396
1.8.4;R134 Den Querystring der aktuellen Seite auswerten;399
1.8.5;R135 Dokumente in Silverlight drucken;400
1.8.6;R136 Einen Webcam-Screenshot drucken;402
1.8.7;R137 ASP.NET- und WCF-Dienste einbinden;407
1.8.8;R138 Die WCF Data Services nutzen;416
1.8.9;R139 Eine Desktop-Anwendung erzeugen;425
1.8.10;R140 Assemblies nachladen;430
1.8.11;R141 Daten per ZIP-Datei nachladen;433
1.8.12;R142 Kommunikation zwischen Plugins realisieren;435
1.8.13;R143 Einen Timer in Silverlight nutzen;439
1.8.14;R144 Weitere Dialogfenster öffnen;441
1.8.15;R145 Dateien auf dem Client speichern;443
1.9;7 Windows Store Apps;446
1.9.1;R146 Den App-Aufbau verstehen und ändern;446
1.9.2;R147 Die Startseite festlegen;450
1.9.3;R148 Prüfen, ob die App zum ersten Mal gestartet wurde;454
1.9.4;R149 App-Zustände vor dem Programmende sichern;454
1.9.5;R150 Anmeldedaten sicher speichern;462
1.9.6;R151 Zwischen App-Seiten navigieren;466
1.9.7;R152 Informationen zwischen Seiten austauschen;471
1.9.8;R153 Auflösungsabhängige Bild-Ressourcen einbetten;471
1.9.9;R154 Einer App ein anderes Theme zuweisen;474
1.9.10;R155 Die Windows-Kontakt-Liste verwenden;478
1.9.11;R156 Eine E-Mail versenden;481
1.9.12;R157 Apps in die Windows 8-Suche integrieren;484
1.9.13;R158 Das Einstellungen-Panel verwenden;492
1.9.14;R159 Einstellungen über mehrere Geräte synchronisieren;501
1.9.15;R160 Auf Größen- und Formatänderungen reagieren;501
1.9.16;R161 Die Modern UI-Live Tiles ansteuern;506
1.9.17;R162 Eine Dateiverknüpfung erstellen;512
1.9.18;R163 Die Zwischenablage verwenden;516
1.9.19;R164 Daten anderen Apps zur Verfügung stellen;524
1.9.20;R165 Daten aus anderen Apps konsumieren;528
1.9.21;R166 FilePicker für die Dateiauswahl verwenden;538
1.9.22;R167 Von der MessageBox zum MessageDialog;543
1.9.23;R169 Einen Style zur Laufzeit zuweisen;547
1.9.24;R170 Eine App per Code beenden;548
1.9.25;R171 Die Positionskoordinaten für Google-Maps nutzen;548
1.9.26;R172 Eine Pause realisieren;553
1.9.27;R173 Global auf Tasteneingaben reagieren;554
1.9.28;R174 Einen Timer programmieren;557
1.9.29;R175 Die aktuelle Bildschirmauflösung ermitteln;559
1.9.30;R177 Prüfen, ob eine Tastatur angeschlossen ist;562
1.9.31;R178 Die virtuelle Tastatur richtig einsetzen;562
1.9.32;R179 Prüfen, ob eine Internetverbindung verfügbar ist;564
1.9.33;R180 Informationen über das aktuelle Package abrufen;566
1.9.34;R181 Das Verzeichnis der App bestimmen;569
1.9.35;R182 Soundausgaben im Background realisieren;570
1.9.36;R183 Audiodaten aufnehmen und wiedergeben;576
1.9.37;R184 Bilder/Videos mit dem WinRT-Dialog aufnehmen;580
1.9.38;R185 Bilder/Videos mit eigenem Userinterface aufnehmen;584
1.9.39;R186 Windows Store Apps richtig debuggen;589
1.9.40;R187 Apps auf einem anderen PC installieren;594
1.10;8 Schnittstellen;596
1.10.1;R188 Eine einfache E-Mail versenden;596
1.10.2;R189 E-Mails mit dem integrierten Mail-Client versenden;597
1.10.3;R190 Die Zwischenablage verwenden;599
1.10.4;R191 Die WIA-Library kennenlernen;600
1.10.4.1;Installation/Vorbereitung;601
1.10.4.2;Einstieg mit kleiner Beispielanwendung;602
1.10.4.3;Reagieren auf das Verbinden/Trennen von Geräten;604
1.10.4.4;Ermitteln der verfügbaren Geräte;604
1.10.4.5;Anzeige der Geräteeigenschaften;605
1.10.4.6;Ein Bild einlesen;606
1.10.4.7;Bild(er) drucken per Assistent;609
1.10.4.8;Den Scanner-Assistent aufrufen;610
1.10.4.9;Grafikbearbeitung mit WIA;611
1.10.5;R192 Auf eine Webcam zugreifen;612
1.10.6;R193 Auf den Scanner zugreifen;615
1.10.7;R194 OpenOffice.org Writer per OLE steuern;620
1.10.8;R195 Mit OLE-Automation auf MS Access zugreifen;627
1.10.9;R196 Ein Managed Add-In programmieren und einbinden;632
1.10.10;R197 Zugriff auf die serielle Schnittstelle;640
1.10.11;R198 Sound per MCI aufnehmen;644
1.10.12;R199 Mikrofonpegel anzeigen;648
1.10.13;R200 Pegeldiagramm aufzeichnen;649
1.10.14;R201 Sound-und Video-Dateien per MCI abspielen;653
1.10.15;R202 Eine C-DLL in C# einbinden;662
1.11;9 System;670
1.11.1;R203 Nutzer und Gruppen des aktuellen Systems ermitteln;670
1.11.2;R206 Die IP-Adressen des Computers bestimmen;675
1.11.3;R207 Die IP-Adresse über den Hostnamen bestimmen;676
1.11.4;R208 Diverse Systeminformationen ermitteln;677
1.11.4.1;Betriebssystem (Name, Version, Bootmode);678
1.11.4.2;Schriftarten/-Informationen;679
1.11.4.3;Bildschirme;680
1.11.4.4;Netzwerk (User-Name, PC-Name ...);681
1.11.4.5;Environment Variablen auslesen;682
1.11.4.6;Hardware-Informationen;683
1.11.4.7;Energiestatus;684
1.11.4.8;Anwendung (Pfad, Name, Assembly);684
1.11.4.9;Soundkarte(n);685
1.11.4.10;CLR-Version;686
1.11.5;R209 Alles über den Bildschirm erfahren;687
1.11.6;R210 Die Registrierdatenbank verwenden;688
1.11.7;R211 Eine verknüpfte Anwendung öffnen;691
1.11.8;R212 Eine Dateiverknüpfung erzeugen;692
1.11.9;R213 Den Computer herunterfahren oder neu starten;694
1.11.10;R214 Den "Herunterfahren"-Dialog anzeigen;698
1.11.11;R215 Das System-Shutdown-Ereignis auswerten;699
1.11.12;R216 Windows in den Standby-Modus versetzen;699
1.11.13;R217 Systemereignisse auswerten;700
1.11.14;R218 Windows Botschaften verarbeiten;701
1.11.15;R219 Alle geöffneten Windows Fenster ermitteln;703
1.11.16;R220 Die Taskbar Notification Area (TNA) verwenden;706
1.11.17;R221 Neue Programmgruppen erzeugen;708
1.11.18;R222 Verknüpfungen auf dem Desktop erzeugen;710
1.11.19;R223 Den Bildschirmschoner aktivieren/deaktivieren;712
1.11.20;R224 Drag & Drop mit dem Explorer realisieren;713
1.11.21;R225 System-Icons verwenden;714
1.11.22;R226 Die Desktop-Icons ein-/ausblenden;715
1.11.23;R227 Die Taskbar ausblenden;716
1.11.24;R228 Den Papierkorb leeren;717
1.11.25;R229 Den Windows Suchassistenten verwenden;718
1.11.26;R230 Systemtöne und WAV-Dateien wiedergeben;720
1.11.27;R231 Das Windows-Systemprotokoll nutzen;722
1.11.28;R232 Das Windows-Systemprotokoll überwachen;724
1.11.29;R233 Die Zwischenablage überwachen und anzeigen;725
1.11.30;R234 Das Datei-Eigenschaftenfenster anzeigen;728
1.11.31;R235 Prüfen, ob Visual Styles aktiviert sind;730
1.11.32;R236 Schriftarten dynamisch einbinden und verwenden;731
1.11.33;R237 Eine Soundkarte erkennen;733
1.11.34;R238 Prozess- und Thread-Informationen gewinnen;734
1.11.35;R239 Ein externes Programm starten;739
1.11.36;R240 Eine externe Anwendung starten und überwachen;741
1.11.37;R241 Erhöhte Berechtigungen erhalten;743
1.12;10 Sonstiges;750
1.12.1;R242 Logische Fehler mittels Debugger aufspüren;750
1.12.2;R243 Eigene Fehlerklassen definieren;757
1.12.3;R244 Die MessageBox-Klasse verwenden;759
1.12.4;R245 Nur eine Anwendungsinstanz zulassen;761
1.12.5;R246 Die Anwendungsparameter auswerten;763
1.12.6;R247 Tastaturbefehle senden;765
1.12.7;R248 Mittels Reflection Typinformationen sammeln;769
1.12.8;R249 Ressourcen per Reflection auslesen;771
1.12.9;R250 Methoden per Reflection oder dynamisch aufrufen;774
1.12.10;R251 Mehrere Methoden parallel verarbeiten;776
1.12.11;R252 Arrays parallel verarbeiten;780
1.12.12;R253 Client/Server-Anwendung mit zwei Projekten;784
1.12.13;R254 Eine Windows Form-Anwendung lokalisieren;788
1.12.14;R255 Eine Assembly dynamisch einbinden;792
1.12.15;R256 ILSpy zum "Schnüffeln" verwenden;796
1.12.16;R257 Eine GUID erzeugen;798
1.12.17;R258 Bytes in Megabyte umrechnen;799
1.12.18;R259 Hex-Dezimal-Bytes-Konverter;800
1.12.19;R260 Einen langen Hex-String in Bytes umwandeln;804
1.12.20;R261 Einen String verschlüsseln;806
1.12.21;R262 Die Verwendung von DoEvents verstehen;808
1.12.22;R263 Eine Pause realisieren;811
1.12.23;R264 Numerische Integration ausführen;813
1.12.24;R265 Hilfedateien programmieren;817
1.12.25;R266 Hilfedateien in die Visual C#-Anwendung einbinden;821
1.12.26;R267 Eine alternative Hilfe-IDE verwenden;825
1.12.27;R268 Installationsdateien erzeugen;826
1.12.28;R269 Eine farbige Konsolenanwendung realisieren;837
1.12.29;R270 Lesbare Menüleisten in Visual Studio 2012 anzeigen;839
1.13;Anhang
;840
1.13.1;A Glossar;840
1.13.2;B Wichtige Datei-Extensions;845
1.14;Index;846
2;Ergänzungsband
;862
2.1;Inhaltsverzeichnis
;864
2.2;Zweites Vorwort;874
2.3;11 Kleiner OOP-Crashkurs;876
2.3.1;R271 Klassen und Objekte verstehen;876
2.3.2;R272 Einen eigenen Konstruktor implementieren;881
2.3.3;R273 Eigenschaften kapseln;882
2.3.4;R274 Vererbung und Polymorphie anwenden;886
2.3.5;R275 Ereignisse programmieren;893
2.3.6;R276 Ein Entwurfsmuster umsetzen;896
2.3.7;R277 Das Microsoft Event Pattern implementieren;906
2.4;12 Grafikprogrammierung;910
2.4.1;R278 Ein Graphics-Objekt erzeugen;910
2.4.2;R279 Verbundene Linien und Pfeile zeichnen;913
2.4.3;R280 Eine gemusterte Linie zeichnen;915
2.4.4;R281 Rechtecke und Ellipsen zeichnen;916
2.4.5;R282 Rechtecke mit runden Ecken zeichnen;917
2.4.6;R283 Transparente Farben verwenden;919
2.4.7;R284 Ein Tortendiagramm zeichnen;920
2.4.8;R285 Die Grafikdialoge richtig einsetzen;921
2.4.9;R286 Ein Control-Array mit Grafiken ausstatten;923
2.4.10;R287 Einen grafischen Würfel programmieren;926
2.4.11;R288 Den Abstand zwischen zwei Punkten berechnen;929
2.4.12;R289 Ein Balkendiagramm zeichnen;931
2.4.13;R290 Farbwerte mischen;935
2.4.14;R291 Eine Verkehrsampel programmieren;939
2.4.15;R292 Eine 2D-Vektorgrafik manipulieren;942
2.4.16;R293 Geometrische Transformationen durchführen;947
2.4.17;R294 Eine Grafik scrollen;949
2.4.18;R295 Eine Bitmap erzeugen und als Datei speichern;950
2.4.19;R296 Eine Metafilegrafik erzeugen und speichern;951
2.4.20;R297 Einen Fenster-Screenshot erzeugen;953
2.4.21;R298 Einen Desktop-Screenshot realisieren;955
2.4.22;R299 Auf dem Windows-Desktop zeichnen;957
2.4.23;R300 Eine Grafik aus den Programmressourcen laden;959
2.4.24;R301 Zwei Farbwerte miteinander vergleichen;962
2.4.25;R302 Einen Farbverlauf erzeugen;963
2.4.26;R303 Einen transparenten Stift erzeugen;964
2.4.27;R304 Texte gedreht ausgeben;965
2.4.28;R305 Text mit Schatten ausgeben;967
2.4.29;R306 Mehrzeiligen Text ausgeben;968
2.4.30;R307 Text mit Tabulatoren ausgeben;969
2.4.31;R308 Die installierten Schriftarten ermitteln;970
2.4.32;R309 Die JPEG-Kompression festlegen;972
2.4.33;R310 Eine Grafik maskieren;973
2.4.34;R311 Die Transparenz einer Grafik steuern;975
2.4.35;R312 Einfache GIF-Animationen wiedergeben;977
2.4.36;R313 Auf einzelne GIF-Frames zugreifen;979
2.4.37;R314 Aus animierten Gifs ein Bitmap-Strip erzeugen;981
2.4.38;R315 Flackernde Grafikausgaben vermeiden;982
2.4.39;R316 Einfache Grafikanimationen realisieren;984
2.4.40;R317 RGB-Grafiken manipulieren;986
2.4.41;R318 Einen Markierungsrahmen erzeugen;993
2.4.42;R319 Zeichenoperationen mit der Maus realisieren;995
2.5;13 Drucker/Drucken;1002
2.5.1;R321 Mit C# drucken;1002
2.5.2;R322 Den Windows Standard-Drucker ermitteln;1003
2.5.3;R323 Den Windows Standard-Drucker ändern;1004
2.5.4;R324 Die verfügbaren Drucker ermitteln;1005
2.5.5;R325 Einen Drucker auswählen;1006
2.5.6;R326 Papierformate und Seitenabmessungen bestimmen;1007
2.5.7;R327 Den physikalischen Druckbereich ermitteln;1009
2.5.8;R328 Die aktuelle Seitenausrichtung ermitteln;1010
2.5.9;R330 Die physikalische Druckauflösung abfragen;1011
2.5.10;R331 Prüfen, ob beidseitiger Druck möglich ist;1012
2.5.11;R332 Einen Informationsgerätekontext erzeugen;1012
2.5.12;R333 Drucken mit Millimeter-Angaben;1014
2.5.13;R334 Die Seitenränder für den Druck festlegen;1015
2.5.14;R335 Einen Druckjobnamen vergeben;1017
2.5.15;R336 Die Anzahl der Kopien festlegen;1018
2.5.16;R337 Beidseitigen Druck realisieren;1018
2.5.17;R338 Bestimmte Seitenbereiche drucken;1019
2.5.18;R339 Den PageSetup-Dialog verwenden;1024
2.5.19;R340 Das Windows-Drucker-Fenster anzeigen;1027
2.5.20;R341 Eine Textdatei drucken;1028
2.5.21;R342 Den Inhalt einer TextBox drucken;1030
2.5.22;R343 Den Drucker umfassend konfigurieren;1032
2.5.23;R344 Mit Microsoft Word per OLE drucken;1042
2.5.24;R345 Ein Microsoft Word-Formular füllen und drucken;1045
2.5.25;R346 Mit Microsoft Access drucken;1049
2.5.26;R347 Die Drucker-Konfiguration anzeigen;1050
2.5.27;R348 Diverse Druckereigenschaften bestimmen;1052
2.5.28;R349 Dokumente mit dem Internet Explorer drucken;1053
2.5.29;R350 Einen Drucker anhalten;1055
2.6;14 Dateien/Verzeichnisse;1058
2.6.1;R351 Mit den Dateidialogen auf eine Textdatei zugreifen;1058
2.6.2;R352 Alle Unterverzeichnisse auflisten;1062
2.6.3;R353 Alle Dateien auflisten;1063
2.6.4;R354 Die GetFileSystemInfos-Methode verwenden;1064
2.6.5;R355 Die Path-Klasse kennen lernen;1066
2.6.6;R356 Verzeichnis- und Datei-Informationen gewinnen;1067
2.6.7;R357 Änderungen im Dateisystem überwachen;1071
2.6.8;R358 Dateien rekursiv suchen;1074
2.6.9;R359 Eine sequenzielle Datei lesen und schreiben;1076
2.6.10;R360 Serialisierte Objekte in einer Datei ablegen;1079
2.6.11;R361 Den Inhalt einer ListView als Datei abspeichern;1083
2.6.12;R362 Den Verzeichnisinhalt in einer ListView anzeigen;1088
2.6.13;R363 Einen Verzeichnisbaum in eine TreeView einlesen;1091
2.6.14;R364 Eine Datei verschlüsseln;1093
2.6.15;R365 Eine Datei komprimieren;1096
2.6.16;R366 Die vorhandenen Laufwerke feststellen;1098
2.6.17;R367 Das Einlesen einer Datei mit ProgressBar anzeigen;1099
2.6.18;R368 Echte ZIP-Dateien erstellen;1101
2.6.19;R369 PDFs erstellen/exportieren;1103
2.6.20;R370 Eine CSV-Datei erstellen;1107
2.6.21;R371 Eine CSV-Datei mit LINQ lesen und auswerten;1110
2.6.22;R372 Einen korrekten Dateinamen erzeugen;1113
2.7;15 XML;1114
2.7.1;R373 Ein DataSet in einen XML-String konvertieren;1114
2.7.2;R374 Ein DataSet in einer XML-Datei speichern;1118
2.7.3;R375 In Dokumenten mit dem XPathNavigator navigieren;1121
2.7.4;R376 In Dokumenten mit XElement/XDocument navigieren;1125
2.7.5;R377 In Dokumenten mit dem XPathNavigator suchen;1129
2.7.6;R378 Hierarchische Daten in einer TreeView darstellen;1132
2.7.7;R379 XML-Daten mit dem XmlReader lesen;1135
2.7.8;R380 XML-Daten mit LINQ to XML einlesen/filtern;1138
2.7.9;R381 XML-Daten mit dem XmlWriter erzeugen;1140
2.7.10;R382 XML-Dokumente mit LINQ to XML erzeugen;1142
2.7.11;R383 Verzeichnisstruktur als XML-Dokument sichern;1144
2.7.12;R384 Binäre Daten in einem XML-Dokument speichern;1146
2.7.13;R385 Objektstrukturen im XML-Format sichern;1149
2.7.14;R386 XML-Dokumente mit XSLT transformieren;1154
2.7.15;R387 XML-Dokumente mit LINQ transformieren;1156
2.7.16;R388 XML-Daten mit XmlDataDocument bearbeiten;1157
2.7.17;R389 XML-Daten in SQL Server-Tabellen speichern;1160
2.7.18;R390 XML-Dokumente in Webanwendungen anzeigen;1161
2.8;16 ADO.NET;1166
2.8.1;R391 Auf eine Access-Datenbank zugreifen;1166
2.8.2;R392 Auf den SQL Server zugreifen;1169
2.8.3;R393 ConnectionString in Konfigurationsdatei ablegen;1172
2.8.4;R394 Den DataReader kennen lernen;1175
2.8.5;R395 Minimaler DB-Client für Lese- und Schreibzugriff;1176
2.8.6;R396 Schemainformationen verwenden;1178
2.8.7;R397 Query Notifications verwenden;1181
2.8.8;R398 Mit einer Datenquelle arbeiten;1186
2.8.9;R399 Eine Aktionsabfrage ausführen;1191
2.8.10;R400 Daten direkt hinzufügen oder löschen;1194
2.8.11;R401 Gespeicherte Prozeduren aufrufen;1197
2.8.12;R402 Eine Access-Auswahlabfrage aufrufen;1200
2.8.13;R403 Parametrierte Abfragen unter MS Access ausführen;1202
2.8.14;R404 Parametrierte Abfragen für SQL Server ausführen;1204
2.8.15;R405 Datumswerte in SQL-Anweisungen einbauen;1205
2.8.16;R406 Die Datenbank manuell aktualisieren;1207
2.8.17;R407 Die Datenbank mit CommandBuilder aktualisieren;1212
2.8.18;R408 Mit Stapel-Abfragen arbeiten;1213
2.8.19;R409 RowUpdating-/RowUpdated-Ereignisse verwenden;1215
2.8.20;R410 MARS kennen lernen;1218
2.8.21;R411 Auf Zeilen und Spalten der DataTable zugreifen;1222
2.8.22;R412 Eine ListBox an eine DataView binden;1224
2.8.23;R413 Das DataGridView mit ComboBoxen ausrüsten;1226
2.8.24;R414 Auf eine einzelne Zeile im DataGridView zugreifen;1229
2.8.25;R415 DataTable erzeugen und in Binärdatei speichern;1232
2.8.26;R416 Eine DataTable in einer XML-Datei abspeichern;1236
2.8.27;R417 Die RemotingFormat-Property des DataSets nutzen;1237
2.8.28;R418 Master-Detail-Beziehungen im DataGrid anzeigen;1240
2.8.29;R419 Im DataView sortieren und filtern;1242
2.8.30;R420 Im DataView nach Datensätzen suchen;1244
2.8.31;R421 Zwischen DataTable und DataReader umwandeln;1246
2.8.32;R422 Steuerelemente manuell an ein DataSet binden;1249
2.8.33;R423 Datensätze im Detail-Formular editieren;1254
2.8.34;R424 Tabellen mittels ComboBox verknüpfen;1260
2.8.35;R425 Spalten und Zeilen im DataGridView formatieren;1264
2.8.36;R426 DataReader in ListView anzeigen;1266
2.8.37;R427 Bilder aus der Datenbank anzeigen;1270
2.8.38;R428 Ein ungebundenes DataSet erzeugen;1272
2.8.39;R429 Ein typisiertes DataSet im Designer erzeugen;1275
2.8.40;R430 Ein DataSet in ein typisiertes DataSet füllen;1278
2.8.41;R431 Eine LINQ to SQL-Abfrage realisieren;1281
2.9;17 ASP.NET/Webdienste;1286
2.9.1;R432 Eine einfache Website programmieren;1286
2.9.2;R433 Tabellen mit der Table-Komponente erstellen;1292
2.9.3;R434 Daten zwischen Web Forms austauschen;1299
2.9.4;R435 Informationen über den Browser ermitteln;1302
2.9.5;R436 Die Bildschirmauflösung des Clients ermitteln;1304
2.9.6;R437 Das Browser-Fenster maximieren;1306
2.9.7;R438 Cookies in ASP.NET-Anwendungen verwenden;1307
2.9.8;R439 HTML-Ausgaben an den Client senden;1309
2.9.9;R440 Bilder/Dateien an den Client senden;1311
2.9.10;R441 Die IP-Adresse des Clients abfragen;1312
2.9.11;R442 Die Anzahl der Seitenaufrufe eines Users ermitteln;1312
2.9.12;R443 Auf den Fehlercode 404 reagieren;1314
2.9.13;R444 Die Validierung temporär deaktivieren;1316
2.9.14;R445 Den Eingabefokus bei Validierung setzen;1317
2.9.15;R446 Eine clientseitige Validierung realisieren;1317
2.9.16;R447 Die Zellen in einem GridView formatieren;1318
2.9.17;R448 Ein GridView mit Bildlaufleisten realisieren;1320
2.9.18;R449 Einen Mouseover-Effekte im GridView realisieren;1321
2.9.19;R450 Auf fehlende Daten im GridView reagieren;1322
2.9.20;R451 Daten einfach ins MS Excel-Format exportieren;1323
2.9.21;R452 Berechnungen in GridView-Zeilen realisieren;1326
2.9.22;R453 Spaltensummen im GridView berechnen;1327
2.9.23;R454 Währungswerte im GridView korrekt anzeigen;1329
2.9.24;R455 Eine Validierung im GridView realisieren;1330
2.9.25;R456 Mit einem Popup-Fenster Detaildaten anzeigen;1332
2.9.26;R457 Sicherheitsabfrage vor dem Löschen realisieren;1336
2.9.27;R458 E-Mail-Versand in ASP.NET realisieren;1337
2.9.28;R459 Verzeichnisbäume mit der TreeView anzeigen;1339
2.9.29;R460 Datenaustausch zwischen ClientScript und Server;1342
2.9.30;R461 Dateien auf den Server uploaden;1344
2.9.31;R462 Ein ASP.NET-Menü dynamisch erzeugen;1345
2.9.32;R463 Die Browser-Kopfzeile zur Laufzeit ändern;1347
2.9.33;R464 Einen Zeilenumbruch im Label-Control realisieren;1347
2.9.34;R465 HTML-Zeichenfolgen im Browser anzeigen;1348
2.9.35;R466 Die Browser-Scrollposition wiederherstellen;1349
2.9.36;R467 Dateien eines Unterverzeichnisses auflisten;1350
2.9.37;R468 MouseOver-Effekte für Controls realisieren;1352
2.9.38;R469 Server Controls zur Laufzeit erzeugen;1353
2.9.39;R470 Doppelklicks auf Schaltflächen verhindern;1355
2.9.40;R471 Das Browserfenster per Client-Skript schließen;1357
2.9.41;R472 Ein einfaches ASP.NET User Control programmieren;1358
2.9.42;R473 Grafikausgaben per User Control realisieren;1361
2.9.43;R474 Die Upload-Begrenzung ändern;1365
2.9.44;R475 Eine Webseite per JavaScript drucken;1365
2.9.45;R476 Ein Projekt auf den IIS exportieren;1366
2.9.46;R477 Ärger mit den Cookies vermeiden;1368
2.9.47;R478 Einen XML-Webdienst programmieren;1369
2.9.48;R479 Einen Webdienst-Client erstellen;1374
2.9.49;R480 Datenbankzugriffe mit Webdiensten realisieren;1378
2.9.50;R481 Einen Webverweis aktualisieren;1394
2.9.51;R482 Authentifikation für Webdienste nutzen;1395
2.9.52;R483 Caching in Webdiensten realisieren;1396
2.9.53;R484 Den Microsoft IIS nachträglich installieren;1399
2.9.54;R485 Die AJAX-Controls verwenden;1401
2.9.55;R486 Datenbindung mittels EntityDataSource realisieren;1403
2.9.56;R487 Den QueryExtender zum Filtern verwenden;1409
2.9.57;R488 Tipps & Tricks;1413
2.9.57.1;Ärger mit Leerzeichen in URLs vermeiden;1413
2.9.57.2;Den Namen des aktuellen Nutzers ermitteln;1414
2.9.57.3;Eine zufällige Datei zur Anzeige auswählen;1414
2.9.57.4;Einen Datei speichern unter-Dialog anzeigen lassen;1415
2.9.57.5;Anwendungseinstellungen in der Web.config sichern;1416
2.10;18 Reporting Services;1418
2.10.1;R489 Einen einfachen Bericht entwerfen;1418
2.10.2;R490 Einen Bericht ohne Assistentenhilfe erstellen;1423
2.10.3;R491 Im Bericht sortieren;1426
2.10.4;R492 Im Bericht filtern;1430
2.10.5;R493 Weitere Tipps & Tricks;1433
2.11;19 Komplexbeispiele;1436
2.11.1;R494 Kleines Textverarbeitungsprogramm;1436
2.11.1.1;MDI-Rahmenfenster;1437
2.11.1.2;MDI-Kindfenster;1437
2.11.1.3;Menüs zusammenführen;1439
2.11.1.4;PopUp-Menü hinzufügen;1441
2.11.1.5;Dokumente drucken;1448
2.11.2;R495 Buchungssystem mit Random Access Datei;1453
2.11.2.1;Klassenübersicht;1453
2.11.2.2;Entwicklung des Geschäftsmodells;1454
2.11.3;R496 Ein einfacher FTP-Client;1467
2.11.3.1;Auflisten des FTP-Verzeichnisses;1468
2.11.3.2;Herunterladen einer Datei per FTP;1469
2.11.3.3;Heraufladen einer Datei per FTP;1470
2.11.3.4;Löschen einer Datei im FTP-Verzeichnis;1471
2.11.3.5;Bedienfunktionen;1472
2.11.4;R497 Lösen von linearen Gleichungssystemen;1474
2.11.4.1;Ein wenig Theorie;1475
2.11.4.2;Komponente CTBMatrix;1476
2.11.5;R498 Rechner für komplexe Zahlen;1483
2.11.5.1;Was sind komplexe Zahlen?;1483
2.11.5.2;Programmierung der Klasse CComplexN;1485
2.11.6;R499 Formel-Rechner mit dem CodeDOM;1492
2.11.6.1;Basisversion des Rechners;1493
2.11.6.2;Assembly auf Festplatte speichern;1498
2.11.6.3;Berechnungsergebnisse als Diagramm darstellen;1501
2.11.7;R500 Einen mehrschichtigen Entwurf praktizieren;1506
2.11.7.1;Die Datenstruktur;1506
2.11.7.2;Die Ereignisdefinition;1508
2.11.7.3;Die Ereignislogik;1510
2.11.7.4;Das User-Interface;1512
2.11.7.5;Die Datenpersistenz;1515
2.11.7.6;Die Verwaltung des Pattern;1516
2.11.7.7;Ein zweiter Observer;1520
2.11.7.8;Zusammenfassung;1520
2.12;Index;1522



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.