-
ACHTUNG - NEUES BLOG
Ab sofort steht unter http://devtyr.norberteder.com mein neues Blog zur Verfügung. Dieses Blog wird nicht weiter betreut, bleibt aber erhalten. Neue Eintr%auml;ge erfolgen nur mehr im neuen Blog. Kommentare werden ebenfalls nicht mehr behandelt. Wer weiterhin meinen Einträgen und Aktivitäten folgen möchte, möge bitte RSS-Feeds, Verlinkungen etc. an die neue Location anpassen.
|
Windows Presentation Foundation - Teil 2: XAML und Layouts
26.06.06 - .NET, WPF Beitrag von Norbert Eder
WPF: Rotation und Skalierung einfach gemacht
23.06.06 - .NET, WPF Beitrag von Norbert Eder| | Beschäftigt man sich näher mit der Materie Windows Presentation Foundation, sieht man schon an sehr einfachen Beispielen, dass die Möglichkeiten schon sehr mächtig sind. Beispielhaft zeige ich an dieser Stelle, wie einfach ein Button skaliert und gedreht werden kann.
Dazu wird im Beispiel ein simpler Button erstellt und plaziert. Über Schieberegeler ist es möglich, die Values für die Rotation bzw. des Zoomfaktors zu setzen. Dies sieht dann folgendermaßen aus:
Um nun die Funktionalität zu implementieren ist nichts weiter zu machen, als die entsprechenden EventHandler zu setzen:
Zoomfaktor
public void sliderZoom_ValueChanged(object sender, RoutedEventArgs e)
{
ScaleTransform st = new ScaleTransform(sliderZoom.Value, sliderZoom.Value);
this.btnTest.LayoutTransform = st;
}
Rotationsfaktor
public void sliderRotate_ValueChanged(object sender, RoutedEventArgs e)
{
RotateTransform rt = new RotateTransform(sliderRotate.Value);
this.btnTest.RenderTransform = rt;
}
Das Ergebnis sieht dann wie folgt aus:
Dies kann jetzt nicht nur auf einen Button angewandt werden, sondern auf die gesamte Oberfläche, oder auch nur einzelne Bereiche. Der dahinterliegenden XAML-Code etc. ist im gesamten Projekt enthalten, welches zum Download bereit steht.
Download WPF Rotation Test Beispiel
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Windows Presentation Foundation - Teil 1: Einführung
21.06.06 - .NET, WPF Beitrag von Norbert Eder
SQL ade: .NET Entity Objects (NEO) in der Praxis
16.06.06 - Internet, Community Beitrag von Norbert Eder| | In der aktuellen Ausgabe der dotnetpro ist der Artikel SQL ade: .NET Entity Objects (NEO) in der Praxis meiner Wenigkeit ab sofort zu lesen.
Anhand des .NET Entity Objects Framework (NEO) wird gezeigt, wie einfach eine Anwendung mit Zugriff auf ein DBMS ohne jegliches SQL erstellt werden kann.
| | | Kommentar hinzufügen
- 2 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
.NET Framework 3.0 - Part 2
13.06.06 - Base Framework Beitrag von Norbert Eder
MSDN Wiki online
13.06.06 - Base Framework Beitrag von Norbert Eder
Windows Vista und das .NET Framework - Welche Version?
10.06.06 - Base Framework Beitrag von Norbert Eder| | In unserem Unternehmen, als auch in vielen anderen Unternehmen, als auch Foren, kehrt immer wieder die Frage in die allgemeine Runde ein, welche .NET Version denn nun standardmäßig mit Windows Vista ausgeliefert wird.
Nun, hier die Antwort: .NET 3.0
Verschrieben? Nein. Ich wiederhole: .NET 3.0
Was wird in .NET 3.0 neu sein? Nun, so wie es aussieht, handelt es sich dabei um eine Zusammenführung von WinFX und .NET 2.0. Weitere Entwicklungen des Basisframeworks wird es also vermutlich erst 2007 geben.
via Albert
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
C# Beginner: Enumeratoren vs Flags
09.06.06 - .NET, Base Framework Beitrag von Norbert Eder| | Enumeratoren sind ja den meisten C# Entwicklern durchaus bekannt. Flags allerdings werden nicht sehr oft eingesetzt. Diese Erfahrung habe ich in diversen Foren gemacht und daher möchte ich dazu ein paar Worte verlieren.
Enumeratoren
Ein Enumerator kann bestimmte vordefinierte Werte enthalten und ist vor allem für Aufzählungen sehr praktisch. Ein Beispiel wäre hierfür der Color-Enumerator. Dieser ermöglicht das einfache Auswählen von Farbwerten. Ein eigenes Beispiel würde wie folgt aussehen:
public enum TestEnum
{
EnumValue0 = 0,
EnumValue1 = 1
}
Für einzelne Items kann hier ein bestimmter Wert definiert werden, muss jedoch nicht. Standardmäßig repräsentiert ein Enumerator einen Int32-Value und beginnt bei 0, ausser anders definiert. Eine Zuweisung sieht beispielsweise wie folgt aus:
private TestEnum testEnum = TestEnum.EnumValue0;
Zu beachten ist, dass testEnum immer nur einen Wert enthalten kann. Dies führt uns nun zur Frage: "Was tun, wenn ich jedoch mehrere Werte speichern möchte?". Ganz einfach:
Flags
Flags können mehrere Werte enthalten. Zuerst jedoch ein Beispiel für die Definition eines Flags:
[Flags]
public enum TestFlag
{
FlagValue1 = 1,
FlagValue2 = 2,
FlagValue4 = 4,
FlagValue8 = 8,
FlagValue16 = 16
}
Im Grunde handelt es sich hierbei um einen Enumerator, dem zusätzlich das Attribut [Flags] verpasst wird. Zusätzlich sind die einzelnen Werte entsprechend des Dualsystems (1,2,4,8,16,32,...) anzugeben, da diese bei Mehrfachauswahl durch ein logisches Oder verknüpft werden.
TestFlag testf = TestFlag.FlagValue1;
testf := TestFlag.FlagValue2;
In diesem Fall hat testf den Wert 3. Dieser repräsentiert FlagValue1 und FlagValue2. Durch ein
testf -= TestFlag.FlagValue1;
reduziert sich der Wert auf 2, wodurch auch nur mehr dieses Flag gesetzt ist. Abfragen können nun folgendermaßen gemacht werden:
if ( (testf & TestFlag.FlagValue1) > 0) {}
Trifft diese Bedingung zu, ist das Flag gesetzt, andernfalls würde das Ergebnis 0 sein und die Bedingung würde folgerichtig nicht zutreffen.
if ( (testf & TestFlag.FlagValue1) == 0) {}
Auf diese Weise kann festgestellt werden, ob ein bestimmtes Flag nicht gesetzt ist. Trifft die Bedingung zu ist es nicht gesetzt, andernfalls schon.
Fazit
Dies sollte einen kurzen Einblick in die Welt der Enumeratoren und Flags bieten. Flags bieten in vielen Fällen eine einfache Lösung für Mehrfachauswahlen und können auch entsprechend in UserControls abgebildet werden, um dem User eine vereinfachte Darstellung zu bieten.
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Windows Vista Beta - Public Download
08.06.06 - Internet Beitrag von Norbert Eder
Office 2007 Webcasts für .NET Entwickler
07.06.06 - Microsoft Office Beitrag von Norbert Eder Zurück Weiter
|
|
|
|
|
|
|