Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort zur 6. Auflage
1 Allgemeine Einführung in .NET
2 Grundlagen der Sprache C#
3 Das Klassendesign
4 Vererbung, Polymorphie und Interfaces
5 Delegates und Ereignisse
6 Strukturen und Enumerationen
7 Fehlerbehandlung und Debugging
8 Auflistungsklassen (Collections)
9 Generics – Generische Datentypen
10 Weitere C#-Sprachfeatures
11 LINQ
12 Arbeiten mit Dateien und Streams
13 Binäre Serialisierung
14 XML
15 Multithreading und die Task Parallel Library (TPL)
16 Einige wichtige .NET-Klassen
17 Projektmanagement und Visual Studio 2012
18 Einführung in die WPF und XAML
19 WPF-Layout-Container
20 Fenster in der WPF
21 WPF-Steuerelemente
22 Elementbindungen
23 Konzepte von WPF
24 Datenbindung
25 Weitere Möglichkeiten der Datenbindung
26 Dependency Properties
27 Ereignisse in der WPF
28 WPF-Commands
29 Benutzerdefinierte Controls
30 2D-Grafik
31 ADO.NET – Verbindungsorientierte Objekte
32 ADO.NET – Das Command-Objekt
33 ADO.NET – Der SqlDataAdapter
34 ADO.NET – Daten im lokalen Speicher
35 ADO.NET – Aktualisieren der Datenbank
36 Stark typisierte DataSets
37 Einführung in das ADO.NET Entity Framework
38 Datenabfragen des Entity Data Models (EDM)
39 Entitätsaktualisierung und Zustandsverwaltung
40 Konflikte behandeln
41 Plain Old CLR Objects (POCOs)
Stichwort

Download:
- Beispiele, ca. 62,4 MB

Buch bestellen
Ihre Meinung?

Spacer
Visual C# 2012 von Andreas Kühnel
Das umfassende Handbuch
Buch: Visual C# 2012

Visual C# 2012
Rheinwerk Computing
1402 S., 6., aktualisierte und erweiterte Auflage 2013, geb., mit DVD
49,90 Euro, ISBN 978-3-8362-1997-6
Pfeil 29 Benutzerdefinierte Controls
Pfeil 29.1 Erstellen eines benutzerdefinierten Steuerelements
Pfeil 29.2 Der XAML-Code
Pfeil 29.3 Die Programmlogik des Steuerelements
Pfeil 29.3.1 Die Eigenschaften
Pfeil 29.3.2 Ein Ereignis bereitstellen
Pfeil 29.3.3 Das Steuerelement um einen »Command« ergänzen
Pfeil 29.4 Testanwendung

29 Benutzerdefinierte ControlsZur nächsten Überschrift

Sicherlich hat der eine oder andere Leser dieses Buches bereits Erfahrungen mit der WinForm-API gemacht. Dann werden Sie auch wissen, dass die Entwicklung eigener Steuerelemente mit dieser Technologie sehr detaillierte Kenntnisse erforderlich machte und darüber hinaus auch sehr zeitaufwendig war – selbst dann, wenn nur die äußerliche Präsentation verändert werden musste. Die vergangenen Kapitel haben gezeigt, dass es sehr einfach ist, mit der WPF das Erscheinungsbild der Controls zu beeinflussen. Die Techniken, die das ermöglichen, sind Styles, ControlTemplates und auch die DataTemplates.

Sie können auch auf verhältnismäßig einfache Weise benutzerdefinierte Steuerelemente in der WPF erstellen. Im Vergleich zu den Änderungen mit den erwähnten Techniken können Sie mit benutzerdefinierten Steuerelementen auch die Funktionalität und Verhaltensweisen ändern oder ergänzen, seien es Eigenschaften, Methoden oder Ereignisse. Genau das soll in diesem Kapitel gezeigt werden, ohne dabei aber die eigentliche Darstellung vollkommen eigenständig vorzunehmen. Wir werden daher nur bereits vorhandene Controls nutzen, um daraus ein eigenes Steuerelement mit allerdings auch eigenen spezifischen Verhaltensweisen zu entwickeln.


Galileo Computing - Zum Seitenanfang

29.1 Erstellen eines benutzerdefinierten SteuerelementsZur vorigen Überschrift

Sie können ein benutzerdefiniertes Steuerelement in einem üblichen WPF-Projekt neu anlegen. Empfehlenswert ist die Vorgehensweise jedoch nicht, da das Control dann auch nur innerhalb der aktuellen Anwendung zur Verfügung steht. Eine allgemeinere und damit auch bessere Lösung ist es, das neue Steuerelement in einer Klassenbibliothek zu hinterlegen und es innerhalb einer Projektmappe zu testen. Änderungen lassen sich dann sehr einfach testen, mögliche Fehlerquellen sind schneller lokalisiert.

Das wollen wir nun auch konkretisieren und dabei ein Steuerelement entwickeln, das es in einer WPF-Anwendung ermöglicht, mit drei Schiebereglern (Slider-Elemente) den RGB-Anteil mit Schiebereglern zu einer Farbe zu mischen, die in einer vordefinierten Fläche innerhalb des Steuerelements angezeigt wird. Wir wollen den Typ des von uns entwickelten Controls ColorMixer nennen. Dazu legen wir uns zuerst ein neues Projekt an, wie in Abbildung 29.1 zu sehen ist.

Abbildung

Abbildung 29.1 Anlegen des Beispiels »ColorMixerSolution«

Im Code-Editor wird anschließend die Struktur einer Klasse UserControl1 angezeigt, die von der Basis UserControl abgeleitet ist:

public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
}

Listing 29.1 Grundstruktur eines UserControls

Da unsere Klasse ColorMixer heißen soll, müssen wir eine entsprechende Anpassung vornehmen und dürfen dabei weder den Konstruktor vergessen noch die entsprechende Änderung in der XAML-Datei.

Die Anforderungen, die an dieses Beispiel gestellt werden, seien wie folgt beschrieben:

  • In einer Fläche soll eine Farbe angezeigt werden, die über drei Schieberegler reguliert wird, die die Farbanteile Rot, Grün und Blau beschreiben.
  • Die aus den Farbanteilen gebildete Farbe soll durch die Eigenschaft Color veröffentlicht werden.
  • Auch die Farbanteile seien über Eigenschaften separat einstellbar. Die entsprechenden Eigenschaften sollen Red, Green und Blue heißen.
  • Es soll ein Ereignis ausgelöst werden, um damit zu signalisieren, dass sich die Eigenschaft Color geändert hat.
  • Über ein Command-Objekt soll der Anwender die Möglichkeit haben, zu der vorherigen Farbeinstellung zurückzuwechseln.

Die Anforderungen machen es erforderlich, neben Abhängigkeitseigenschaften (Dependency Properties) und einem Routed Event auch ein Kommando bereitzustellen. Damit kommen noch einmal in einem Beispiel die Themen der Kapitel 26, 27 und 28 ins Spiel.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.

>> Zum Feedback-Formular
<< zurück
  Zum Katalog
Zum Katalog: Visual C# 2012

Visual C# 2012
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: Professionell entwickeln mit Visual C# 2012






 Professionell
 entwickeln mit
 Visual C# 2012


Zum Katalog: Windows Presentation Foundation






 Windows Presentation
 Foundation


Zum Katalog: Schrödinger programmiert C++






 Schrödinger
 programmiert C++


Zum Katalog: C++ Handbuch






 C++ Handbuch


Zum Katalog: C/C++






 C/C++


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2013
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de