none
后台更改样式风格 RRS feed

  • 常规讨论

  • <Button Content="Help" Style="{StaticResource MenuButton}" />

    在后台的代码该怎么实现:

    Style style1 = (Style)Application.Current.Resources["MenuButton"];

    Button bt = new Button();

    bt.Style = style1;

    2010年5月29日 22:44

全部回复

  • fss199,你好.

    赞同你的写法:

    // 动态设置样式。
    System.Windows.Style style = (System.Windows.Style)Application.Current.Resources["myButton"];
    btn.Style = style;

    Please remember to mark the replies as answers if they help or unmark them if they provide no help.
    2010年5月29日 23:36
  • 谢谢您!

    可是我这样写, 按钮的风格样式都没有改变啊, 还是原来的老样子,

    还要怎么设置?

    2010年5月30日 0:18
  • 那么能够告诉我你在那个事件中触发该动作了呢?

    你可以换个通过Button的Click触发试下.如果是自定义控件的话重写OnApplyTemplate(),在OnApplyTemplate()中触发.
    (以上先排除事件触发先后顺序的影响)

    嘿嘿,本人孤陋寡闻,误导了你可别丢白菜哦~


    Please remember to mark the replies as answers if they help or unmark them if they provide no help.
    2010年5月30日 1:09
  • 在 TreeView_SelectedItemChanged 触发该动作 ,无法更改样式;

    后来再测试 Button_Click 触发也是无效.

     

    2010年5月30日 1:27
  • 那个提个建议:可否把XAML与托管代码贴出来以提供足够的信息?

    这样也许会有更多的人乐意关注:)


    Please remember to mark the replies as answers if they help or unmark them if they provide no help.
    2010年5月30日 2:45
  • 谢谢您!

    其实我只是网上的例程。

    在这里可以下载源码。在该例程中,执行无效!

    http://www.cnblogs.com/webabcd/archive/2009/09/03/1559240.html

    2010年5月30日 7:04
  • 已经下载了 :)待会工作完后我非常乐意看看.
    Please remember to mark the replies as answers if they help or unmark them if they provide no help.
    2010年5月30日 10:43
  • 你好!

    我照着Weblog写了一遍,完全通过.我把我的东东打包了,你可以下载比对.

    嘻嘻,因为环境是VS2010+SL4,我弄了两张Screenshots.

    http://blog.sipsoft.biz/xu/demo/T_ChangeStyle.rar(赶紧下哦,我过几天要删的)

    提示下:你是否忘记在App.XAML文件中添加外部资源文件引用了:

      <ResourceDictionary>
       <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="Style/ButtonStyle1.xaml"/>
        <ResourceDictionary Source="Style/ButtonStyle2.xaml"/>
       </ResourceDictionary.MergedDictionaries>
      </ResourceDictionary>

    如果是这样的话,SL RunTime不会报错,但是会出现你所述状况:)

    好运~


    Please remember to mark the replies as answers if they help or unmark them if they provide no help.
    2010年5月30日 11:26
  • 感谢您的赐教!

    无能以报,遥祝您万事胜意!

    2010年5月30日 11:47
  • 问题解决,为什么没有出现 标记答案 的按钮啊!
    2010年5月30日 11:54
  • 嘻嘻,fss199

    你是以常规讨论的形式发的贴,看到这个主题的图标了么?是个讨论符号.

    只有以提问形式发帖才有的呀(那样的话是个问号[?]),哈哈。

    我现在正努力争取6月份的MSDN讨论区“社区之星”呢。

    fss199和你交个朋友,如何?我的电邮:yxushuqing@gmail.com


    Please remember to mark the replies as answers if they help or unmark them if they provide no help.
    2010年5月30日 12:37
  • 很高兴能和您交朋友!

    已经发了邮件给您!

    2010年5月30日 13:23