Visual C# 2012 - Kochbuch |
4 |
Inhaltsverzeichnis |
6 |
Vorwort | 26 |
1 Kleiner C#-Anfängerkurs | 30 |
R1 Das EVA-Prinzip anwenden | 30 |
R2 Ein Array definieren und initialisieren | 34 |
R3 Die Arraygröße zur Laufzeit ändern | 37 |
R4 Berechnungen in eine Methode auslagern | 39 |
R5 Konsolenprogramm nach Windows portieren | 43 |
R6 Werte in einer ListBox anzeigen | 47 |
2 Sprache | 52 |
R7 Anwendungen von Visual Basic nach C# portieren | 52 |
R8 String in Array kopieren und umgekehrt | 59 |
R9 Ein Byte-Array in einen String konvertieren | 61 |
R10 Strukturvariablen in Arrays einsetzen | 62 |
R11 Eine einzelne Spalte aus einer Matrix kopieren | 65 |
R12 In einer ArrayList suchen und sortieren | 67 |
R13 In einer generischen Liste suchen und sortieren | 69 |
R14 Zufallszahlen erzeugen | 70 |
R15 Iterationen verstehen (Quadratwurzel) | 72 |
R16 Iterationen verstehen (Goldener Schnitt) | 75 |
R17 Funktionen rekursiv aufrufen | 76 |
R18 Zeichenketten mittels StringBuilder addieren | 77 |
R19 Strings vergleichen | 81 |
R20 Eine Stoppuhr programmieren | 84 |
R21 Zeitangaben runden | 86 |
R22 Zeitdifferenzen ermitteln | 88 |
R23 Datumsdifferenzen berechnen | 89 |
R24 Das Alter in Jahren bestimmen | 92 |
R25 Die Monatsdifferenz berechnen | 93 |
R26 Das Datum beweglicher Feiertage berechnen | 95 |
R27 Ersten und letzten Wochentag des Monats ermitteln | 97 |
R28 Den Wochentag eines Datums ermitteln | 98 |
R29 Abschreibungen auf Monatsbasis berechnen | 100 |
R30 Reisespesen berechnen | 103 |
R31 Geldbeträge kaufmännisch runden | 106 |
R32 Fehler bei mathematischen Operationen behandeln | 107 |
R33 Mit Potenzen und Wurzeln rechnen | 111 |
R34 Einen Delegate definieren und anwenden | 112 |
R35 Mit Delegates sortieren (Bubblesort) | 114 |
R36 Referenz-/Wertetypen als Parameter übergeben | 117 |
R37 LINQ im Schnelldurchgang erlernen | 120 |
R38 Strings mit LINQ abfragen und filtern | 123 |
R39 Duplikate aus einer Liste oder einem Array entfernen | 124 |
R40 Arrays mit LINQ initialisieren | 127 |
R41 Arrays per LINQ mit Zufallszahlen füllen | 130 |
R42 Einen String mit Wiederholmuster erzeugen | 131 |
R43 Mit LINQ Zahlen und Strings sortieren | 133 |
R44 Mit LINQ Collections von Objekten sortieren | 134 |
R45 Ergebnisse von LINQ-Abfragen in ein Array kopieren | 137 |
R46 Sortieren mit IComparable/IComparer | 137 |
R47 Mit async und await asynchron programmieren | 141 |
R48 Tipps & Tricks | 144 |
3 OOP/Komponenten | 146 |
R49 Überladene versus überschriebene Methoden | 146 |
R50 Aggregation und Vererbung gegenüberstellen | 149 |
R51 Objekte serialisieren | 155 |
R52 Ein wieder verwendbares Formular erstellen | 158 |
R53 Von einem Formular erben | 161 |
R54 Von vorhandenen Steuerelementen erben | 166 |
R55 Eine Komponente zur Farbauswahl entwickeln | 170 |
R56 Eine Digitalanzeige-Komponente programmieren | 174 |
R57 OOP beim Kartenspiel erlernen | 179 |
R58 Eine Klasse zur Matrizenrechnung entwickeln | 184 |
R59 Interop-Typen in die Assembly einbetten | 189 |
R60 Das Observer-Pattern anwenden (Variante 1) | 192 |
R61 Das Observer-Pattern anwenden (Variante 2) | 195 |
R62 Einen Objektbaum in generischen Listen abspeichern | 200 |
4 Windows Forms-Anwendungen | 208 |
R63 Das Startformular festlegen | 208 |
R64 Beim Programmstart eine Abfrage ausführen | 210 |
R65 Das Schließen des Formulars verhindern | 211 |
R66 Mit mehreren Formularen arbeiten | 212 |
R67 MDI-Applikation und Menüs erstellen | 217 |
R68 Formulare im Formular anzeigen | 220 |
R69 Zur Laufzeit ein Steuerelement erzeugen | 223 |
R70 Steuerelemente-Array per Code erzeugen | 225 |
R71 Auf ein Control-Array zugreifen | 227 |
R72 Mit der TextBox arbeiten | 230 |
R73 In einer TextBox suchen | 232 |
R74 Nur Zahleneingaben zulassen | 233 |
R75 Die Schrifteigenschaften einer TextBox ändern | 235 |
R76 Dezimalkomma in Dezimalpunkt umwandeln | 237 |
R77 Tastatureingaben für mehrere TextBoxen filtern | 238 |
R78 RadioButtons und CheckBoxen einsetzen | 240 |
R79 Die ListBox kennen lernen | 242 |
R80 Die ComboBox erkunden | 245 |
R81 Objekte in ListBox/ComboBox anzeigen | 248 |
R82 Mit der CheckedListBox arbeiten | 251 |
R83 Die Maus abfragen | 254 |
R84 Das TableLayoutPanel einsetzen | 255 |
R85 Mit einem Kontextmenü arbeiten | 259 |
R86 Einfache Datenbindung praktizieren | 261 |
R87 Anwendungseinstellungen an Controls binden | 264 |
R88 Mit Drag & Drop arbeiten | 269 |
R89 Mit dem ErrorProvider arbeiten | 273 |
R90 Eingaben validieren | 276 |
R91 Das NotifyIcon-Control in der Taskleiste einsetzen | 279 |
R92 Ein Array in einer ListView anzeigen | 283 |
R93 Eine ListView mit dem Inhalt eines DataSets füllen | 285 |
R94 In der ListView nach beliebigen Spalten sortieren | 290 |
R95 Das Microsoft Chart-Control verwenden | 295 |
R96 WPF-Komponenten mit dem ElementHost anzeigen | 298 |
R97 Die Einstellungen des User-Interface sichern | 302 |
R98 Drag & Drop im Steuerelemente-Array realisieren | 307 |
R99 Programmierung einer mehrspaltigen ListBox | 314 |
R100 Die Tabulatorbreite verändern | 318 |
5 Windows Presentation Foundation | 320 |
R101 WPF-Anwendung im Fullscreen-Mode starten | 320 |
R102 Fenster auf einem bestimmten Screen anzeigen | 321 |
R103 Das Hauptfenster festlegen und ändern | 323 |
R104 Einen Splash-Screen erzeugen und anzeigen | 324 |
R105 Eine WPF-Browseranwendung erstellen | 326 |
Größe und Titel des Browserfensters festlegen | 326 |
Größe der Browseranwendung anpassen | 327 |
Ein-/Ausblenden der Navigationsschaltflächen | 329 |
Navigation zwischen einzelnen Seiten (Pages) | 329 |
Verwendung von Cookies | 331 |
Abfrage von QueryStrings | 333 |
Übergabe von Page-Instanzen per Konstruktor | 334 |
Eine Instanz der Seite erhalten | 335 |
Einen Ersatz für Window realisieren | 335 |
R107 Grafiken in WPF skaliert anzeigen | 339 |
R108 Grafiken aus Dateien zur Laufzeit laden | 341 |
R109 Grafiken aus Ressourcen zur Laufzeit zuweisen | 343 |
R110 Sonderzeichen im Content darstellen | 346 |
R111 Eigene Schriftarten in die Anwendung einbetten | 347 |
R112 WPF-Controls trotz Layout frei positionieren | 349 |
R113 Textformatierungen im Content realisieren | 350 |
R114 Irreguläre Window-Formen erzeugen | 351 |
R115 Einfache Zeichnungen zur Laufzeit ausgeben | 353 |
R116 Kommandozeilenparameter auswerten | 355 |
R117 Ein Video anzeigen und steuern | 357 |
R118 Schatteneffekt für Controls realisieren | 359 |
R119 Eine TextBox beim Fokuserhalt optisch markieren | 362 |
R120 Den TextBox-Inhalt beim Fokuserhalt markieren | 363 |
R121 Den Pfad der aktuellen Anwendung bestimmen | 365 |
R122 Formulare per Reflection auswählen und anzeigen | 365 |
R123 Datenbindung für Anwendungseinstellungen | 367 |
R124 Deutsches Datumsformat anzeigen | 368 |
R125 Einen Timer in WPF nutzen | 370 |
R126 Das User-Interface am Task-Ende aktualisieren | 371 |
R127 Das User-Interface aus dem Task aktualisieren | 373 |
R128 Collections in Hintergrundthreads füllen | 376 |
R129 Einen Ribbon in meine Anwendung einbinden | 381 |
R130 Das WPF-Chart-Control verwenden | 391 |
6 Silverlight | 394 |
R131 Den Fokus auf das Silverlight-Plugin setzen | 394 |
R132 Zugriff auf die Zwischenablage realisieren | 395 |
R133 Drag & Drop-Unterstützung realisieren | 396 |
R134 Den Querystring der aktuellen Seite auswerten | 399 |
R135 Dokumente in Silverlight drucken | 400 |
R136 Einen Webcam-Screenshot drucken | 402 |
R137 ASP.NET- und WCF-Dienste einbinden | 407 |
R138 Die WCF Data Services nutzen | 416 |
R139 Eine Desktop-Anwendung erzeugen | 425 |
R140 Assemblies nachladen | 430 |
R141 Daten per ZIP-Datei nachladen | 433 |
R142 Kommunikation zwischen Plugins realisieren | 435 |
R143 Einen Timer in Silverlight nutzen | 439 |
R144 Weitere Dialogfenster öffnen | 441 |
R145 Dateien auf dem Client speichern | 443 |
7 Windows Store Apps | 446 |
R146 Den App-Aufbau verstehen und ändern | 446 |
R147 Die Startseite festlegen | 450 |
R148 Prüfen, ob die App zum ersten Mal gestartet wurde | 454 |
R149 App-Zustände vor dem Programmende sichern | 454 |
R150 Anmeldedaten sicher speichern | 462 |
R151 Zwischen App-Seiten navigieren | 466 |
R152 Informationen zwischen Seiten austauschen | 471 |
R153 Auflösungsabhängige Bild-Ressourcen einbetten | 471 |
R154 Einer App ein anderes Theme zuweisen | 474 |
R155 Die Windows-Kontakt-Liste verwenden | 478 |
R156 Eine E-Mail versenden | 481 |
R157 Apps in die Windows 8-Suche integrieren | 484 |
R158 Das Einstellungen-Panel verwenden | 492 |
R159 Einstellungen über mehrere Geräte synchronisieren | 501 |
R160 Auf Größen- und Formatänderungen reagieren | 501 |
R161 Die Modern UI-Live Tiles ansteuern | 506 |
R162 Eine Dateiverknüpfung erstellen | 512 |
R163 Die Zwischenablage verwenden | 516 |
R164 Daten anderen Apps zur Verfügung stellen | 524 |
R165 Daten aus anderen Apps konsumieren | 528 |
R166 FilePicker für die Dateiauswahl verwenden | 538 |
R167 Von der MessageBox zum MessageDialog | 543 |
R169 Einen Style zur Laufzeit zuweisen | 547 |
R170 Eine App per Code beenden | 548 |
R171 Die Positionskoordinaten für Google-Maps nutzen | 548 |
R172 Eine Pause realisieren | 553 |
R173 Global auf Tasteneingaben reagieren | 554 |
R174 Einen Timer programmieren | 557 |
R175 Die aktuelle Bildschirmauflösung ermitteln | 559 |
R177 Prüfen, ob eine Tastatur angeschlossen ist | 562 |
R178 Die virtuelle Tastatur richtig einsetzen | 562 |
R179 Prüfen, ob eine Internetverbindung verfügbar ist | 564 |
R180 Informationen über das aktuelle Package abrufen | 566 |
R181 Das Verzeichnis der App bestimmen | 569 |
R182 Soundausgaben im Background realisieren | 570 |
R183 Audiodaten aufnehmen und wiedergeben | 576 |
R184 Bilder/Videos mit dem WinRT-Dialog aufnehmen | 580 |
R185 Bilder/Videos mit eigenem Userinterface aufnehmen | 584 |
R186 Windows Store Apps richtig debuggen | 589 |
R187 Apps auf einem anderen PC installieren | 594 |
8 Schnittstellen | 596 |
R188 Eine einfache E-Mail versenden | 596 |
R189 E-Mails mit dem integrierten Mail-Client versenden | 597 |
R190 Die Zwischenablage verwenden | 599 |
R191 Die WIA-Library kennenlernen | 600 |
Installation/Vorbereitung | 601 |
Einstieg mit kleiner Beispielanwendung | 602 |
Reagieren auf das Verbinden/Trennen von Geräten | 604 |
Ermitteln der verfügbaren Geräte | 604 |
Anzeige der Geräteeigenschaften | 605 |
Ein Bild einlesen | 606 |
Bild(er) drucken per Assistent | 609 |
Den Scanner-Assistent aufrufen | 610 |
Grafikbearbeitung mit WIA | 611 |
R192 Auf eine Webcam zugreifen | 612 |
R193 Auf den Scanner zugreifen | 615 |
R194 OpenOffice.org Writer per OLE steuern | 620 |
R195 Mit OLE-Automation auf MS Access zugreifen | 627 |
R196 Ein Managed Add-In programmieren und einbinden | 632 |
R197 Zugriff auf die serielle Schnittstelle | 640 |
R198 Sound per MCI aufnehmen | 644 |
R199 Mikrofonpegel anzeigen | 648 |
R200 Pegeldiagramm aufzeichnen | 649 |
R201 Sound-und Video-Dateien per MCI abspielen | 653 |
R202 Eine C-DLL in C# einbinden | 662 |
9 System | 670 |
R203 Nutzer und Gruppen des aktuellen Systems ermitteln | 670 |
R206 Die IP-Adressen des Computers bestimmen | 675 |
R207 Die IP-Adresse über den Hostnamen bestimmen | 676 |
R208 Diverse Systeminformationen ermitteln | 677 |
Betriebssystem (Name, Version, Bootmode) | 678 |
Schriftarten/-Informationen | 679 |
Bildschirme | 680 |
Netzwerk (User-Name, PC-Name ...) | 681 |
Environment Variablen auslesen | 682 |
Hardware-Informationen | 683 |
Energiestatus | 684 |
Anwendung (Pfad, Name, Assembly) | 684 |
Soundkarte(n) | 685 |
CLR-Version | 686 |
R209 Alles über den Bildschirm erfahren | 687 |
R210 Die Registrierdatenbank verwenden | 688 |
R211 Eine verknüpfte Anwendung öffnen | 691 |
R212 Eine Dateiverknüpfung erzeugen | 692 |
R213 Den Computer herunterfahren oder neu starten | 694 |
R214 Den "Herunterfahren"-Dialog anzeigen | 698 |
R215 Das System-Shutdown-Ereignis auswerten | 699 |
R216 Windows in den Standby-Modus versetzen | 699 |
R217 Systemereignisse auswerten | 700 |
R218 Windows Botschaften verarbeiten | 701 |
R219 Alle geöffneten Windows Fenster ermitteln | 703 |
R220 Die Taskbar Notification Area (TNA) verwenden | 706 |
R221 Neue Programmgruppen erzeugen | 708 |
R222 Verknüpfungen auf dem Desktop erzeugen | 710 |
R223 Den Bildschirmschoner aktivieren/deaktivieren | 712 |
R224 Drag & Drop mit dem Explorer realisieren | 713 |
R225 System-Icons verwenden | 714 |
R226 Die Desktop-Icons ein-/ausblenden | 715 |
R227 Die Taskbar ausblenden | 716 |
R228 Den Papierkorb leeren | 717 |
R229 Den Windows Suchassistenten verwenden | 718 |
R230 Systemtöne und WAV-Dateien wiedergeben | 720 |
R231 Das Windows-Systemprotokoll nutzen | 722 |
R232 Das Windows-Systemprotokoll überwachen | 724 |
R233 Die Zwischenablage überwachen und anzeigen | 725 |
R234 Das Datei-Eigenschaftenfenster anzeigen | 728 |
R235 Prüfen, ob Visual Styles aktiviert sind | 730 |
R236 Schriftarten dynamisch einbinden und verwenden | 731 |
R237 Eine Soundkarte erkennen | 733 |
R238 Prozess- und Thread-Informationen gewinnen | 734 |
R239 Ein externes Programm starten | 739 |
R240 Eine externe Anwendung starten und überwachen | 741 |
R241 Erhöhte Berechtigungen erhalten | 743 |
10 Sonstiges | 750 |
R242 Logische Fehler mittels Debugger aufspüren | 750 |
R243 Eigene Fehlerklassen definieren | 757 |
R244 Die MessageBox-Klasse verwenden | 759 |
R245 Nur eine Anwendungsinstanz zulassen | 761 |
R246 Die Anwendungsparameter auswerten | 763 |
R247 Tastaturbefehle senden | 765 |
R248 Mittels Reflection Typinformationen sammeln | 769 |
R249 Ressourcen per Reflection auslesen | 771 |
R250 Methoden per Reflection oder dynamisch aufrufen | 774 |
R251 Mehrere Methoden parallel verarbeiten | 776 |
R252 Arrays parallel verarbeiten | 780 |
R253 Client/Server-Anwendung mit zwei Projekten | 784 |
R254 Eine Windows Form-Anwendung lokalisieren | 788 |
R255 Eine Assembly dynamisch einbinden | 792 |
R256 ILSpy zum "Schnüffeln" verwenden | 796 |
R257 Eine GUID erzeugen | 798 |
R258 Bytes in Megabyte umrechnen | 799 |
R259 Hex-Dezimal-Bytes-Konverter | 800 |
R260 Einen langen Hex-String in Bytes umwandeln | 804 |
R261 Einen String verschlüsseln | 806 |
R262 Die Verwendung von DoEvents verstehen | 808 |
R263 Eine Pause realisieren | 811 |
R264 Numerische Integration ausführen | 813 |
R265 Hilfedateien programmieren | 817 |
R266 Hilfedateien in die Visual C#-Anwendung einbinden | 821 |
R267 Eine alternative Hilfe-IDE verwenden | 825 |
R268 Installationsdateien erzeugen | 826 |
R269 Eine farbige Konsolenanwendung realisieren | 837 |
R270 Lesbare Menüleisten in Visual Studio 2012 anzeigen | 839 |
Anhang |
840 |
A Glossar | 840 |
B Wichtige Datei-Extensions | 845 |
Index | 846 |
Ergänzungsband |
862 |
Inhaltsverzeichnis |
864 |
Zweites Vorwort | 874 |
11 Kleiner OOP-Crashkurs | 876 |
R271 Klassen und Objekte verstehen | 876 |
R272 Einen eigenen Konstruktor implementieren | 881 |
R273 Eigenschaften kapseln | 882 |
R274 Vererbung und Polymorphie anwenden | 886 |
R275 Ereignisse programmieren | 893 |
R276 Ein Entwurfsmuster umsetzen | 896 |
R277 Das Microsoft Event Pattern implementieren | 906 |
12 Grafikprogrammierung | 910 |
R278 Ein Graphics-Objekt erzeugen | 910 |
R279 Verbundene Linien und Pfeile zeichnen | 913 |
R280 Eine gemusterte Linie zeichnen | 915 |
R281 Rechtecke und Ellipsen zeichnen | 916 |
R282 Rechtecke mit runden Ecken zeichnen | 917 |
R283 Transparente Farben verwenden | 919 |
R284 Ein Tortendiagramm zeichnen | 920 |
R285 Die Grafikdialoge richtig einsetzen | 921 |
R286 Ein Control-Array mit Grafiken ausstatten | 923 |
R287 Einen grafischen Würfel programmieren | 926 |
R288 Den Abstand zwischen zwei Punkten berechnen | 929 |
R289 Ein Balkendiagramm zeichnen | 931 |
R290 Farbwerte mischen | 935 |
R291 Eine Verkehrsampel programmieren | 939 |
R292 Eine 2D-Vektorgrafik manipulieren | 942 |
R293 Geometrische Transformationen durchführen | 947 |
R294 Eine Grafik scrollen | 949 |
R295 Eine Bitmap erzeugen und als Datei speichern | 950 |
R296 Eine Metafilegrafik erzeugen und speichern | 951 |
R297 Einen Fenster-Screenshot erzeugen | 953 |
R298 Einen Desktop-Screenshot realisieren | 955 |
R299 Auf dem Windows-Desktop zeichnen | 957 |
R300 Eine Grafik aus den Programmressourcen laden | 959 |
R301 Zwei Farbwerte miteinander vergleichen | 962 |
R302 Einen Farbverlauf erzeugen | 963 |
R303 Einen transparenten Stift erzeugen | 964 |
R304 Texte gedreht ausgeben | 965 |
R305 Text mit Schatten ausgeben | 967 |
R306 Mehrzeiligen Text ausgeben | 968 |
R307 Text mit Tabulatoren ausgeben | 969 |
R308 Die installierten Schriftarten ermitteln | 970 |
R309 Die JPEG-Kompression festlegen | 972 |
R310 Eine Grafik maskieren | 973 |
R311 Die Transparenz einer Grafik steuern | 975 |
R312 Einfache GIF-Animationen wiedergeben | 977 |
R313 Auf einzelne GIF-Frames zugreifen | 979 |
R314 Aus animierten Gifs ein Bitmap-Strip erzeugen | 981 |
R315 Flackernde Grafikausgaben vermeiden | 982 |
R316 Einfache Grafikanimationen realisieren | 984 |
R317 RGB-Grafiken manipulieren | 986 |
R318 Einen Markierungsrahmen erzeugen | 993 |
R319 Zeichenoperationen mit der Maus realisieren | 995 |
13 Drucker/Drucken | 1002 |
R321 Mit C# drucken | 1002 |
R322 Den Windows Standard-Drucker ermitteln | 1003 |
R323 Den Windows Standard-Drucker ändern | 1004 |
R324 Die verfügbaren Drucker ermitteln | 1005 |
R325 Einen Drucker auswählen | 1006 |
R326 Papierformate und Seitenabmessungen bestimmen | 1007 |
R327 Den physikalischen Druckbereich ermitteln | 1009 |
R328 Die aktuelle Seitenausrichtung ermitteln | 1010 |
R330 Die physikalische Druckauflösung abfragen | 1011 |
R331 Prüfen, ob beidseitiger Druck möglich ist | 1012 |
R332 Einen Informationsgerätekontext erzeugen | 1012 |
R333 Drucken mit Millimeter-Angaben | 1014 |
R334 Die Seitenränder für den Druck festlegen | 1015 |
R335 Einen Druckjobnamen vergeben | 1017 |
R336 Die Anzahl der Kopien festlegen | 1018 |
R337 Beidseitigen Druck realisieren | 1018 |
R338 Bestimmte Seitenbereiche drucken | 1019 |
R339 Den PageSetup-Dialog verwenden | 1024 |
R340 Das Windows-Drucker-Fenster anzeigen | 1027 |
R341 Eine Textdatei drucken | 1028 |
R342 Den Inhalt einer TextBox drucken | 1030 |
R343 Den Drucker umfassend konfigurieren | 1032 |
R344 Mit Microsoft Word per OLE drucken | 1042 |
R345 Ein Microsoft Word-Formular füllen und drucken | 1045 |
R346 Mit Microsoft Access drucken | 1049 |
R347 Die Drucker-Konfiguration anzeigen | 1050 |
R348 Diverse Druckereigenschaften bestimmen | 1052 |
R349 Dokumente mit dem Internet Explorer drucken | 1053 |
R350 Einen Drucker anhalten | 1055 |
14 Dateien/Verzeichnisse | 1058 |
R351 Mit den Dateidialogen auf eine Textdatei zugreifen | 1058 |
R352 Alle Unterverzeichnisse auflisten | 1062 |
R353 Alle Dateien auflisten | 1063 |
R354 Die GetFileSystemInfos-Methode verwenden | 1064 |
R355 Die Path-Klasse kennen lernen | 1066 |
R356 Verzeichnis- und Datei-Informationen gewinnen | 1067 |
R357 Änderungen im Dateisystem überwachen | 1071 |
R358 Dateien rekursiv suchen | 1074 |
R359 Eine sequenzielle Datei lesen und schreiben | 1076 |
R360 Serialisierte Objekte in einer Datei ablegen | 1079 |
R361 Den Inhalt einer ListView als Datei abspeichern | 1083 |
R362 Den Verzeichnisinhalt in einer ListView anzeigen | 1088 |
R363 Einen Verzeichnisbaum in eine TreeView einlesen | 1091 |
R364 Eine Datei verschlüsseln | 1093 |
R365 Eine Datei komprimieren | 1096 |
R366 Die vorhandenen Laufwerke feststellen | 1098 |
R367 Das Einlesen einer Datei mit ProgressBar anzeigen | 1099 |
R368 Echte ZIP-Dateien erstellen | 1101 |
R369 PDFs erstellen/exportieren | 1103 |
R370 Eine CSV-Datei erstellen | 1107 |
R371 Eine CSV-Datei mit LINQ lesen und auswerten | 1110 |
R372 Einen korrekten Dateinamen erzeugen | 1113 |
15 XML | 1114 |
R373 Ein DataSet in einen XML-String konvertieren | 1114 |
R374 Ein DataSet in einer XML-Datei speichern | 1118 |
R375 In Dokumenten mit dem XPathNavigator navigieren | 1121 |
R376 In Dokumenten mit XElement/XDocument navigieren | 1125 |
R377 In Dokumenten mit dem XPathNavigator suchen | 1129 |
R378 Hierarchische Daten in einer TreeView darstellen | 1132 |
R379 XML-Daten mit dem XmlReader lesen | 1135 |
R380 XML-Daten mit LINQ to XML einlesen/filtern | 1138 |
R381 XML-Daten mit dem XmlWriter erzeugen | 1140 |
R382 XML-Dokumente mit LINQ to XML erzeugen | 1142 |
R383 Verzeichnisstruktur als XML-Dokument sichern | 1144 |
R384 Binäre Daten in einem XML-Dokument speichern | 1146 |
R385 Objektstrukturen im XML-Format sichern | 1149 |
R386 XML-Dokumente mit XSLT transformieren | 1154 |
R387 XML-Dokumente mit LINQ transformieren | 1156 |
R388 XML-Daten mit XmlDataDocument bearbeiten | 1157 |
R389 XML-Daten in SQL Server-Tabellen speichern | 1160 |
R390 XML-Dokumente in Webanwendungen anzeigen | 1161 |
16 ADO.NET | 1166 |
R391 Auf eine Access-Datenbank zugreifen | 1166 |
R392 Auf den SQL Server zugreifen | 1169 |
R393 ConnectionString in Konfigurationsdatei ablegen | 1172 |
R394 Den DataReader kennen lernen | 1175 |
R395 Minimaler DB-Client für Lese- und Schreibzugriff | 1176 |
R396 Schemainformationen verwenden | 1178 |
R397 Query Notifications verwenden | 1181 |
R398 Mit einer Datenquelle arbeiten | 1186 |
R399 Eine Aktionsabfrage ausführen | 1191 |
R400 Daten direkt hinzufügen oder löschen | 1194 |
R401 Gespeicherte Prozeduren aufrufen | 1197 |
R402 Eine Access-Auswahlabfrage aufrufen | 1200 |
R403 Parametrierte Abfragen unter MS Access ausführen | 1202 |
R404 Parametrierte Abfragen für SQL Server ausführen | 1204 |
R405 Datumswerte in SQL-Anweisungen einbauen | 1205 |
R406 Die Datenbank manuell aktualisieren | 1207 |
R407 Die Datenbank mit CommandBuilder aktualisieren | 1212 |
R408 Mit Stapel-Abfragen arbeiten | 1213 |
R409 RowUpdating-/RowUpdated-Ereignisse verwenden | 1215 |
R410 MARS kennen lernen | 1218 |
R411 Auf Zeilen und Spalten der DataTable zugreifen | 1222 |
R412 Eine ListBox an eine DataView binden | 1224 |
R413 Das DataGridView mit ComboBoxen ausrüsten | 1226 |
R414 Auf eine einzelne Zeile im DataGridView zugreifen | 1229 |
R415 DataTable erzeugen und in Binärdatei speichern | 1232 |
R416 Eine DataTable in einer XML-Datei abspeichern | 1236 |
R417 Die RemotingFormat-Property des DataSets nutzen | 1237 |
R418 Master-Detail-Beziehungen im DataGrid anzeigen | 1240 |
R419 Im DataView sortieren und filtern | 1242 |
R420 Im DataView nach Datensätzen suchen | 1244 |
R421 Zwischen DataTable und DataReader umwandeln | 1246 |
R422 Steuerelemente manuell an ein DataSet binden | 1249 |
R423 Datensätze im Detail-Formular editieren | 1254 |
R424 Tabellen mittels ComboBox verknüpfen | 1260 |
R425 Spalten und Zeilen im DataGridView formatieren | 1264 |
R426 DataReader in ListView anzeigen | 1266 |
R427 Bilder aus der Datenbank anzeigen | 1270 |
R428 Ein ungebundenes DataSet erzeugen | 1272 |
R429 Ein typisiertes DataSet im Designer erzeugen | 1275 |
R430 Ein DataSet in ein typisiertes DataSet füllen | 1278 |
R431 Eine LINQ to SQL-Abfrage realisieren | 1281 |
17 ASP.NET/Webdienste | 1286 |
R432 Eine einfache Website programmieren | 1286 |
R433 Tabellen mit der Table-Komponente erstellen | 1292 |
R434 Daten zwischen Web Forms austauschen | 1299 |
R435 Informationen über den Browser ermitteln | 1302 |
R436 Die Bildschirmauflösung des Clients ermitteln | 1304 |
R437 Das Browser-Fenster maximieren | 1306 |
R438 Cookies in ASP.NET-Anwendungen verwenden | 1307 |
R439 HTML-Ausgaben an den Client senden | 1309 |
R440 Bilder/Dateien an den Client senden | 1311 |
R441 Die IP-Adresse des Clients abfragen | 1312 |
R442 Die Anzahl der Seitenaufrufe eines Users ermitteln | 1312 |
R443 Auf den Fehlercode 404 reagieren | 1314 |
R444 Die Validierung temporär deaktivieren | 1316 |
R445 Den Eingabefokus bei Validierung setzen | 1317 |
R446 Eine clientseitige Validierung realisieren | 1317 |
R447 Die Zellen in einem GridView formatieren | 1318 |
R448 Ein GridView mit Bildlaufleisten realisieren | 1320 |
R449 Einen Mouseover-Effekte im GridView realisieren | 1321 |
R450 Auf fehlende Daten im GridView reagieren | 1322 |
R451 Daten einfach ins MS Excel-Format exportieren | 1323 |
R452 Berechnungen in GridView-Zeilen realisieren | 1326 |
R453 Spaltensummen im GridView berechnen | 1327 |
R454 Währungswerte im GridView korrekt anzeigen | 1329 |
R455 Eine Validierung im GridView realisieren | 1330 |
R456 Mit einem Popup-Fenster Detaildaten anzeigen | 1332 |
R457 Sicherheitsabfrage vor dem Löschen realisieren | 1336 |
R458 E-Mail-Versand in ASP.NET realisieren | 1337 |
R459 Verzeichnisbäume mit der TreeView anzeigen | 1339 |
R460 Datenaustausch zwischen ClientScript und Server | 1342 |
R461 Dateien auf den Server uploaden | 1344 |
R462 Ein ASP.NET-Menü dynamisch erzeugen | 1345 |
R463 Die Browser-Kopfzeile zur Laufzeit ändern | 1347 |
R464 Einen Zeilenumbruch im Label-Control realisieren | 1347 |
R465 HTML-Zeichenfolgen im Browser anzeigen | 1348 |
R466 Die Browser-Scrollposition wiederherstellen | 1349 |
R467 Dateien eines Unterverzeichnisses auflisten | 1350 |
R468 MouseOver-Effekte für Controls realisieren | 1352 |
R469 Server Controls zur Laufzeit erzeugen | 1353 |
R470 Doppelklicks auf Schaltflächen verhindern | 1355 |
R471 Das Browserfenster per Client-Skript schließen | 1357 |
R472 Ein einfaches ASP.NET User Control programmieren | 1358 |
R473 Grafikausgaben per User Control realisieren | 1361 |
R474 Die Upload-Begrenzung ändern | 1365 |
R475 Eine Webseite per JavaScript drucken | 1365 |
R476 Ein Projekt auf den IIS exportieren | 1366 |
R477 Ärger mit den Cookies vermeiden | 1368 |
R478 Einen XML-Webdienst programmieren | 1369 |
R479 Einen Webdienst-Client erstellen | 1374 |
R480 Datenbankzugriffe mit Webdiensten realisieren | 1378 |
R481 Einen Webverweis aktualisieren | 1394 |
R482 Authentifikation für Webdienste nutzen | 1395 |
R483 Caching in Webdiensten realisieren | 1396 |
R484 Den Microsoft IIS nachträglich installieren | 1399 |
R485 Die AJAX-Controls verwenden | 1401 |
R486 Datenbindung mittels EntityDataSource realisieren | 1403 |
R487 Den QueryExtender zum Filtern verwenden | 1409 |
R488 Tipps & Tricks | 1413 |
Ärger mit Leerzeichen in URLs vermeiden | 1413 |
Den Namen des aktuellen Nutzers ermitteln | 1414 |
Eine zufällige Datei zur Anzeige auswählen | 1414 |
Einen Datei speichern unter-Dialog anzeigen lassen | 1415 |
Anwendungseinstellungen in der Web.config sichern | 1416 |
18 Reporting Services | 1418 |
R489 Einen einfachen Bericht entwerfen | 1418 |
R490 Einen Bericht ohne Assistentenhilfe erstellen | 1423 |
R491 Im Bericht sortieren | 1426 |
R492 Im Bericht filtern | 1430 |
R493 Weitere Tipps & Tricks | 1433 |
19 Komplexbeispiele | 1436 |
R494 Kleines Textverarbeitungsprogramm | 1436 |
MDI-Rahmenfenster | 1437 |
MDI-Kindfenster | 1437 |
Menüs zusammenführen | 1439 |
PopUp-Menü hinzufügen | 1441 |
Dokumente drucken | 1448 |
R495 Buchungssystem mit Random Access Datei | 1453 |
Klassenübersicht | 1453 |
Entwicklung des Geschäftsmodells | 1454 |
R496 Ein einfacher FTP-Client | 1467 |
Auflisten des FTP-Verzeichnisses | 1468 |
Herunterladen einer Datei per FTP | 1469 |
Heraufladen einer Datei per FTP | 1470 |
Löschen einer Datei im FTP-Verzeichnis | 1471 |
Bedienfunktionen | 1472 |
R497 Lösen von linearen Gleichungssystemen | 1474 |
Ein wenig Theorie | 1475 |
Komponente CTBMatrix | 1476 |
R498 Rechner für komplexe Zahlen | 1483 |
Was sind komplexe Zahlen? | 1483 |
Programmierung der Klasse CComplexN | 1485 |
R499 Formel-Rechner mit dem CodeDOM | 1492 |
Basisversion des Rechners | 1493 |
Assembly auf Festplatte speichern | 1498 |
Berechnungsergebnisse als Diagramm darstellen | 1501 |
R500 Einen mehrschichtigen Entwurf praktizieren | 1506 |
Die Datenstruktur | 1506 |
Die Ereignisdefinition | 1508 |
Die Ereignislogik | 1510 |
Das User-Interface | 1512 |
Die Datenpersistenz | 1515 |
Die Verwaltung des Pattern | 1516 |
Ein zweiter Observer | 1520 |
Zusammenfassung | 1520 |
Index | 1522 |