Wie zu verwenden Stil.Trigger in Silverlight 4.0?
Dem ausschalten von WPF nach Silverlight 4.0 ich komme auf etwas ganz grundlegendes. Es gibt anscheinend keine Möglichkeit, ich könnte ein Trigger in meinem Stile. Wie wird dies funktionieren würde?
z.B. hier habe ich eine DataGrid ColumnHeader-Stil in meine ResourceDictionary:
<Style x:Key="DataGridColumnHeaderStyle" TargetType="sdk:DataGridColumnHeader" >
<Setter Property="Background" Value="#88800080" />
<Setter Property="Foreground" Value="White" />
<Style.Triggers>
<Trigger Property="SortDirection" Value="{x:Null}">
<Setter Property="Background" Value="{DynamicResource DataGridHeaderBackgroundBrush}" />
<Setter Property="BorderBrush" Value="Transparent" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True" />
<Condition Property="SortDirection" Value="{x:Null}" />
</MultiTrigger.Conditions>
<Setter Property="Background" Value="{StaticResource DataGridHeaderMouseOverBackgroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource DataGridHeaderBorderBrush}" />
</MultiTrigger>
...
Einige der google-Suche versucht ab Anfang 2009 Anspruch auf die Nutzung Wandler anstelle, aber ich bin ganz fest mit diesem. Ich wäre wirklich dankbar wenn jemand könnte mir einen Hinweis darüber, wie es zu tun.
InformationsquelleAutor Houman | 2011-04-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Expression Blend Hinzugefügt Unterstützung für WPF-type-Trigger für Silverlight. Diese blog-post erklärt das mehr.
Aber kurz gesagt, Sie bekommen nicht den gleichen Wert hat Vorrang bei jenen auslöst, wie Sie mit WPF. Was bedeutet, einen Stil, der Auslöser außer Kraft setzen können, eine Einstellung, die explizit auf ein element.
Silverlight verwendet die VisualStateManager Konzept zum "Thema" oder passen Sie das Aussehen eines Steuerelements. Es zwingt effektiv Sie definieren "festen" Zustände, wie Hover (z.B. IsMouseOver = true) oder Gedrückt. Sie können dann wenden Sie Animationen beim betreten oder verlassen dieser Staaten. Man kann also sagen, animieren den hintergrund, wenn die Maus zu geben, schwebte Aussehen.
Den VisualStateManager-Ansatz macht es viel einfacher, um Tools rund um customizing, das Aussehen eines controls. Dies wird im detail in diesem blog-post.
Also kurz gesagt, Sie werden nicht in der Lage zu übersetzen, ist es Einzelunterricht. Sie finden es gibt viele Dinge wie diese. Zum Beispiel gibt es keine IsMouseOver-Eigenschaft auf UIElement, wie es in WPF.
WoW das ist Wahnsinn. Trigger sind ein großer Teil von WPF. Kann mir nicht vorstellen, ohne Sie 🙂 Aber ich habe keine Wahl, als adept
InformationsquelleAutor CodeNaked