Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Button Style ableiten - Propertys erweitern.
Hans_Rakete
myCSharp.de - Member



Dabei seit:
Beiträge: 183

Themenstarter:

Button Style ableiten - Propertys erweitern.

beantworten | zitieren | melden

Hallo,

Wenn ich mehrere Buttons habe, die sich alle nur dadurch unterscheiden, dass zwei Grafiken (Standard und MouseOver // schwarz-weiß und farbig) unterschiedlich sind so muss ich für jeden Button einen eigenen Style bzw. ein eigenes Template schreiben, denn es scheint unmöglich zwei Grafiken von "außen" an das Template zu übergeben - bei einer einzelenen Grafik hat es noch über ein ContentTemplate funktioniert, zwei Grafiken zu übergeben klappt aber nicht.

Was kann ich nun tun? Das Control Button abzuleiten und zwei eigene Propertys anfügen um zum Ziel zu gelangen oder gibt es einen einfacheren Weg?

Vielen Dnak + viele Grüße.
private Nachricht | Beiträge des Benutzers
Briefkasten
myCSharp.de - Member

Avatar #avatar-1523.gif


Dabei seit:
Beiträge: 444

beantworten | zitieren | melden

Ich bin mir nicht sicher ob du das meinst.

Erstell als erstes deinen "base" Style.
<Style x:meineButtons ... />
<Style x:meineButtons1 basedon={StaticResource x:meineButtons} ... />
<Style x:meineButtons2 basedon={StaticResource x:meineButtons} ... />
<Style x:meineButtons3 basedon={StaticResource x:meineButtons} ... />

Bei den erweiterten meinButtons1-3 musst du dann noch das ControlTemplate setzen. In das ControlTemplate baust du deine Grafiken dann ein.

http://msdn.microsoft.com/de-de/library/ms753328%28v=vs.90%29.aspx
Schaut mal im IRC vorbei:
Server: [email protected]#c#.de oder [email protected]#csharp
private Nachricht | Beiträge des Benutzers
Hans_Rakete
myCSharp.de - Member



Dabei seit:
Beiträge: 183

Themenstarter:

beantworten | zitieren | melden

Hallo,

vielen Dank für die Antwort. Der Vorgang ist bekannt. einem Template ist aber eben auch nur eine Grafikadresse von außen zuzuführen (Beispielsweise über ContentTemplate), sobald es um zwei Angaben geht muss das Template immer wieder neu definiert werden, genau das versuche ich ja zu umgehen ...
private Nachricht | Beiträge des Benutzers
MrSparkle
myCSharp.de - Team

Avatar #avatar-2159.gif


Dabei seit:
Beiträge: 5983
Herkunft: Leipzig

beantworten | zitieren | melden

Hi Hans_Rakete,
Zitat von Hans_Rakete
Wenn ich mehrere Buttons habe, die sich alle nur dadurch unterscheiden, dass zwei Grafiken (Standard und MouseOver // schwarz-weiß und farbig) unterschiedlich sind...

Kennst du schon die AutoGrayImage-Klasse? Damit geht das sehr unkompliziert:
<Button>
  <my:AutoGrayImage Source2="/GrayImage;component/Images/Tulips.png" />
</Button>  

Christian
Weeks of programming can save you hours of planning
private Nachricht | Beiträge des Benutzers