如何在metro风格的应用程序中使用xaml中的静态方法(带参数)?在wpf我可以使用 ObjectDataProvider ,但在WinRT中没有这样的东西。
我需要像这样使用它:
<button x:Name="MyButton" Content=MyStaticMethodCall("Sth") />
有办法做到这一点吗?或者将对象存储在资源中,然后像这样调用他的方法?
<button x:Name="MyButton" Content={StaticResource MyObject, Path=MyObject.MyMethod("bla") />
答案 0 :(得分:0)
我记得在以前的项目中,在metro应用程序中无法访问静态代码。我们必须引用一些常量,如果它们是常量或静态则无法引用它们。但时间过去了可能会发生一些变化,但我对此表示怀疑......
答案 1 :(得分:0)
我不确定你想要什么,但为什么不使用MarkupExtension。
您可以简单地添加xaml,然后使用ProvideValue方法来调用静态方法。
如果您需要代码示例,请发表评论。
答案 2 :(得分:0)
这不是它的工作原理,而不是调用一个你应该使用DataBinding的方法 - 将Button的DataContext或整个页面设置为你的对象然后像这样绑定Button Content:
<Button x:Name="MyButton" Content="{Binding ButtonContent}" />
有关DataBinding的一些基本信息如下:
A Guided Tour of WPF – Part 3 (Data binding)