开发者

Updating style on runtime in wpf

I have a style for a ItemContainer that is based on the Item being contained (With a StyleSelector). It works fine. However on runtime the property might be changed but the style isn't updated inst开发者_如何学编程antly.

Is there anyway for me to get it to update as soon as the changes are saved?


Use a DataTrigger and a Converter which returns the Type of an object

For example,

<Style.Triggers>
    <DataTrigger Binding="{Binding Converter=ObjectToTypeConverter}" 
                 Value="{x:Type local:Person}">
        <Setter Property="ItemTemplate" Value="{Binding PersonTemplate}" />
    </DataTrigger>
    <DataTrigger Binding="{Binding Converter=ObjectToTypeConverter}" 
                 Value="{x:Type local:Business}">
        <Setter Property="ItemTemplate" Value="{Binding BusinessTemplate}" />
    </DataTrigger>
</Style.Triggers>


Use binding. Then you will need to implement INotifyPropertyChanged. The value you are setting should be a property and at the end of the setter, raise the property changed event.

If you give an example of your XAML, I can write it out for you.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜