日期:2014-05-18  浏览次数:20829 次

关于trigger的问题
我看了trigger的例子,是针对同一个类的直接属性的操作,比如checkbox用IsChecked属性作为trigger条件,修改FontWeight属性(Style TargetType="CheckBox")。
但是,如果我的是想通过一个stackpanel中的checkbox来控制同一个stackpanel中的textblock控件的FontWeight属性应该怎么操作呢?
C# code

    <StackPanel>
        <CheckBox x:Name="chb" Content="Bold"/>
        <TextBlock x:Name="tb" Text="some infomation" />
    </StackPanel>


请指教,谢谢

------解决方案--------------------
探讨

请问是不是这个时候就不能应用trigger或者datatrigger(这里的checkbox只是举例,也可能是属性数据),只能用事件的方式实现?

------解决方案--------------------
触发器是内部逻辑,只能处理自己内部的事情,不是用来通知别人,通知别人的那个东西叫做事件。

1,你可以把
<CheckBox x:Name="chb" Content="Bold"/>
<TextBlock x:Name="tb" Text="some infomation" />
放到一个控件里面去,然后就可以用触发器了,但是这肯定不是什么好办法。
2,就是用事件。