通过XAML在静态类中调用静态方法

时间:2012-02-11 18:12:34

标签: c# .net wpf xaml

搜索并找不到对此的回复。有没有人知道从XAML中的静态类调用静态方法的方法。我知道可以使用ObjectDataProvider从常规类调用静态方法,例如:

<ObjectDataProvider x:Key="mthd" ObjectType="{x:Type l:MyClass}" MethodName="MyStaticMethod">
    <ObjectDataProvider.MethodParameters>
        <sys:String>Test</sys:String>
    </ObjectDataProvider.MethodParameters>
</ObjectDataProvider>

我已经尝试过静态类,但它失败了。由于静态类无法实例化,但“对象引用未设置为对象实例”除外。

.Net 4.0中的静态类可以做类似的事情吗? 提前谢谢!

1 个答案:

答案 0 :(得分:1)

创建像ObjectDataProvide这样的东西非常简单,你只需要使用一些反射。通过XAML的Type属性获取类类型以及方法名称和参数,然后使用右侧BindingFlags的{​​{3}}并使用传递的参数调用它。