BlackCoin's Corner

und noch ein Blog

Oktober 2009 - Einträge

Visual Studio 2010 Multimonitor
Na endlich VS bekommt den Multi-Monitor Support


kleiner Tipp für Entwickler die, die geteilte Ansicht (Designer und Code gleichzeitig) auch nicht mögen.
in den Einstellungen gibt es da eine Option
Posted: Okt 31 2009, 11:04 von Lars Schmitt | mit no comments
Abgelegt unter:
Festlegen eines Window Styles in der App.xaml

So manchen Einsteiger aber auch machen Profis fragen schreiben immer noch diesen Style, wenn auch mit anderen Settern, in die App.xaml.

<Application x:Class="TestApp.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
        <Style  TargetType="{x:Type Window}">
            <Setter Property="Background" Value="LightGray"/>
        </Style>
    </Application.Resources>
</Application>
 

 

Jedoch das gewünschte Ergebnis, nämlich ein Window mit einem Grauen Hintergrund, bleibt aus.

 

WARUM?

 

Die Erklärung dieses Problems ist recht einfach und auch Einleuchtend.

Wenn man in einem WPF Projekt ein Fenster erstellen möchte, Implementiert man seinen Content, nicht etwa direkt in ein Window Element, sondern man leitet von dem Steuerelement Window ab und erzeugt somit ein eigenständiges Steuerelement, mit dem Verhalten eines Windows.

Bei den einem normalen Steuerelementen, wie zb einem Button, wird die Button Class ja direkt benutzt, man erwartet ja auch nicht das ein eigenes Conrol, nur weil es vom Button ableitet wurde, auch den Style eines Buttons hat.

mögliche Lösungen:

App.xaml

<Application x:Class="TestApp.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
        <SolidColorBrush x:Key="WindowBackground" Color="LightGray"/>
    </Application.Resources>
</Application>
 

Innerhalb des Windows

<Window x:Class="TestApp.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525" Background="{DynamicResource WindowBackground}">
 
    <Grid/>
</Window>

oder

<Application x:Class="TestApp.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
        <Style TargetType="{x:Type [WindowType]}">
           <setter Property="Background" Value="Black"/>
        </Style>
    </Application.Resources>
</Application>
 
Nachteil bei diesen Lösungen:

Der Code muss immer wieder, in jedes Window eingefügt werden.

 

oder

man Implementiert einmal ein Window mit allem drum und dran, und erstellt nur noch UserControls, die dann dynamisch je nach Zustand in das Stamm Window eingebunden werden.


Auch wenn ich an dieser stelle mögliche Lösungen vorstelle, heißt das natürlich nicht, dass dies die einzigsten Möglichkeiten sind.

Posted: Okt 31 2009, 05:04 von Lars Schmitt | mit no comments
Abgelegt unter: ,
Eigentlich erster Eintrag
Ohh, wie unfreundlich von mir, 

da habe ich doch den wichtigen ersten Beitrag vergessen. 

nunja mein Name ist Lars Schmitt und ich bin 31 Jahre jung.

Beruflicher Natur bin ich ein Fachinformatiker der Fachrichtung Anwendungsentwicklung der irgendwie nicht nur Programmiert, sondern auch irgendwie in die Administration reingerutscht ist.

Ich habe mir lange überlegt, ob ich nun auch mal unter die Blogger gehen soll oder nicht ....
(ich sehe schon die Kommentare: Hättest Du das mal lieber gelassen)

wie die Entscheidung ausgefallen ist, könnt ihr an dieser Stelle ja sehen.

wer jetzt denkt BlackCoin, der Name kommt mir bekannt vor, kann ich euch beruhigen euer Kopf spielt euch keinen Streich, den im .NET-FORUM bin ich schon länger angemeldet, nur halt nicht so aktiv.
des weiteren 
bin ich auch der User BlackDragon von .NET-SNIPPETS.de.

oder noch eine weitere Möglichkeit wäre, ihr kennt mich aus dem Forum myCSharp.de.
es gibt zwar noch weitere, aber das sollte reichen den erstens sind es andere Pseudonyme oder ich bin dort nicht so aktiv.

was könnt ihr nun von diesem Blog erwaten:
  1. Windows 7 (wie ihr ja bereits lesen konntet)
  2. rund um die Welt .NET
  3. was sonst noch so Interessant sein könnte
ok, ok die nahe Zukunft könnte etwas WPF lastig sein, denn aktuell laufen meine Vorbereitungen auf das MS-Zertifikat 70-502.

ich wünsche euch viel Spaß, beim lesen.
Windows 7
Es freut mich nun endlich berichten zu dürfen, dass gestern der Bote von DPD an meiner Tür klingelte und mir meine Version von Windows 7 vorbeibrachte ...

Nach ca einer halben Stunde, war dann das neue Betriebssystem auf meinem Laptop Installiert. So wie es nach einer neu Installation gang und gebe ist, folgten erst einmal die Grundeinstellungen. Bis zu dem Punkt, an denen ich unter Benutzerkonten mein Bild ändern wollte ...

ok bei einem eigenen Bild, in einem komischen Format, hätte ich das ganze noch verstehen können, aber selbst bei der Auswahl der kleinen Katze, erschien diese Meldung. Um diese Meldung für die Nachwelt festzuhalten, machte ich also ein Screenshot, um diesen mithilfe von Paint zu speichern, jedoch Paint war nicht davon zu überzeugen dieses Bild in meinem Dateisystem abzulegen.

Ich höre euch jetzt beim Lesen schon schreien hääää Paint, kennt der sein System nicht, sowas macht man mit dem Snipping Tool!

Ja natürlich hätte ich es damit auch versuchen können, doch man hängt doch so an seinen alten Gewohnheiten. (aber ich werde mal versuchen, ob ich nicht zukünftig das Snipping Tool verwenden kann)

Das ganze ging noch eine Zeit, mit recht Interessanten Fehlermeldungen von unterschiedlichen Programmen so weiter und da ich die Lösung ja mittlerweile kenne, kann ich sagen das mich keine dieser Fehlermeldungen der Lösung auch nur ein stück näher gebracht hätten.

Ich war schon kurz davor, dass gesamte System neu zu Installieren ...
bis ich mich erinnerte, dass ich die Umgebungsvariablen TMP und TEMP auf den Pfad c:\temp geändert hatte.

und was soll ich sagen, kaum hatte ich diesen Ordner angelegt, schon lösten sich die ganzen Fehlermeldungen in Luft auf.

Posted: Okt 31 2009, 12:48 von Lars Schmitt | mit 1 comment(s)
Abgelegt unter: