Silverlight: Wie eine Bindung im Set-für einen Stil (oder eine gleichwertige umgehen)
Wenn die person, die beantwortet diese Frage ist richtig, Sie können nicht verbindlich, als der Wert in einen setter in einem style-in Silverlight. Das ist schade, denn ich habe 4 Textblöcke, die alle genau die gleiche Bindung, die für Ihre Eigenschaft "Deckkraft". Es ist trotzdem in einem gewissen Sinne "Stil" die Deckkraft-Eigenschaft so ein, dass alle vier von Ihnen weisen in die gleiche Bindung? Ansonsten habe ich, um jede Eigenschaft "Deckkraft" individuell. In meinem Fall ist es sogar noch schlimmer - alle vier teilen, andere Eigenschaft, die Bindungen als auch, was bedeutet, dass jedes TextBlock-Erklärung ist ziemlich dang lang, und dennoch sind Sie alle praktisch die gleiche (Ihre Eigenschaft Bindungen). Ich weiß, ich könnte die kurz und prägnant alle setzen Ihre gemeinsame Eigenschaft Bindungen in der code-behind -, aber ich möchte eine XAML-Lösung, wenn es eine gibt.
Dank!
InformationsquelleAutor der Frage JoeCool | 2011-02-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist wie Ihre getan. Verwenden Sie eine
ContentControl
und geben Sie einenControlTemplate
dafür, wie eine statische Ressource:-Nun können Sie bung so können auch andere Eigenschaften mit Bindungen in der Steuerelement-Vorlage, wie Sie wollen.
Dieser Ansatz könnte erweitert werden, um
Style
:-InformationsquelleAutor der Antwort AnthonyWJones
Check-out
SetterValueBindingHelper
in diesem blog-Artikel und Unterstützung fürBinding
im Stil setter ist angekündigt für SL5.InformationsquelleAutor der Antwort Denis
In Silverlight: Gut... ja, Sie kann gar nicht verbindlich. Hier habe ich eine statische Ressource, (was wahrscheinlich nicht Ihre Bedürfnisse zu erfüllen). Dieses ist das nähste, das Sie gehen zu bekommen, ohne dabei die Bindungen im code.
BEARBEITEN:
Gut, hier ist es in WPF sowieso...
Hier gehen Sie, in WPF:
Kann man natürlich viel kreativer als dieses. Auch, je nachdem, wie /Wann /wo Sie Ihre Stile definiert sind, ist es manchmal einfacher, nur um es im code.
InformationsquelleAutor der Antwort A.R.
Ich hatte das exakt gleiche problem vor ein paar Tagen und fand den folgenden blog-post.
http://blogs.msdn.com/b/delay/archive/2009/11/02/as-the-platform-evolves-so-do-the-workarounds-better-settervaluebindinghelper-makes-silverlight-setters-better-er.aspx
Es funktioniert wie ein Charme.
InformationsquelleAutor der Antwort Gilles Radrizzi