| 

.NET C# Java Javascript Exception

1
Hallo,
ich habe einen Button in meiner WinRt-App erstellt. Jetzt möchte ich den Mouseover- bzw. PointerOver-Effekt überschreiben. Dies habe ich auch erfolgreich gemacht. Nur habe ich leider den negativen Nebeneffekt, dass es mir alle anderen Settings des Buttons auch noch überschreibt.
Mein Vorgehen ist hier so. Ich muss leider hauptsächlich aus dem CodeBehind arbeiten, da einige Controls dynamisch erzeugt werden.


  • Ich weise dem Button einen Style zu, der nur PointerOver überschreibt
  • Im Codebehind dann werden von mir nachdem ich den Style zugewiesen habe Größe, Background, Foreground etc. angepasst.


Irgendjemand eine Idee?
08.02.2013
phlow666 922 1 9
1 Antwort
0
Irgendwie verstehe ich dein Problem nicht ganz. Bei XAML lässt sich ja auch im CodeBehinde ein EventTrigger zu den Styles hinzufügen. Auch eine dynamische Erzeugung von Controls im CodeBehinde muss nur in sehr wenigen Ausnahmefällen sein und ist in der Regel sowieso ein Fehler in der Denkweise. XAML ist da schon so mächtig, dass es so was im Normalfall nicht braucht und man das in vielen Fällen auch nicht machen sollte (wegen Trennung von Anzeige- und Verarbeitungs-Logik).

Da ist man in Kombination mit ObservableCollection, PropertyTrigger und DataTemplate (, ContentTemplate oder ItemTemplate) sehr flexibel, welches Control nun zur Laufzeit für welches HintergrundObjekt verwendet wird und welches Control nun welche EventTrigger-Style annehmen soll.

Eine kurze Beschreibung, was du da mit den dynamisch erzeugten Controls bewerkstelligen möchtest, würde da wohl mehr helfen, da ich glaube, dass du oder dein Team das große Potenzial von XAML noch nicht umsetzen könnt und noch immer mehr in WinForms-Dimensionen denkt. In WinForms sind ja so Sachen, wie im vorherigen Absatz beschrieben, nur im CodeBehinde zu bewerkstelligen.
09.02.2013
Stelzi79 44 1

Stelle deine .net-Frage jetzt!