首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > CAD教程 >

后台调用样式有关问题

2013-07-08 
后台调用样式问题前台页面: Style x:Keytreeview_picture TargetTypesdk:TreeViewItemSetter Pro

后台调用样式问题
前台页面: <Style x:Key="treeview_picture" TargetType="sdk:TreeViewItem">
            <Setter Property="Header" >
                <Setter.Value>
                    <DataTemplate>
                        <StackPanel Orientation="Horizontal">
                            <Image Source="/SilverlightApplication19;component/Images/文件夹.png"></Image>
                            <TextBlock Text="文件管理" />
                        </StackPanel>
                    </DataTemplate>
                </Setter.Value>
            </Setter>
        </Style>     

后台调用:  TreeViewItem tvi = new TreeViewItem();
            tvi.Style = App.Current.Resources["treeview_picture"] as Style;
为什么调用不了样式呢~?
[解决办法]

引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

在前台调用这个样式,能正常显示吗?


不能啊、、、所以我不知道怎么弄啊。。。


前台调用都不行,证明有可能是你的样式根本就写错了,所以跟你“后台调用不了”没关系



<Style x:Key="treeview_picture" TargetType="sdk:TreeViewItem">
            <Setter Property="HeaderTemplate" >
                <Setter.Value>
                    <DataTemplate>
                        <StackPanel Orientation="Horizontal">
                            <Image Source="/SilverlightApplication19;component/Images/文件夹.png"></Image>
                            <TextBlock Text="文件管理"  FontSize="14"/>


                        </StackPanel>
                    </DataTemplate>
                </Setter.Value>
            </Setter>
        </Style>

这回没问题了,但是我在后台想改变样式里TextBlock 中Text的值,能做到么?~


最笨的办法,给这个textblock加一个name属性
然后后台遍历可视树,根据这个name找到这个textblock就行了
[解决办法]
在前台,我们可以通过语句
  Style="{StaticResource btnStyle}"
  来绑定样式,在后台中对应的语句是:
  ButtonTest.Style = App.Current.Resources["btnStyle"] as Style;
  或者:
  ButtonTest.Style = System.Windows.Application.Current.Resources["btnStyle"] as Style;

请参考:
http://silverlightchina.net/html/tips/2013/0204/21823.html

热点排行