【问题标题】:WPF ObjectDataProvider with static method GetPosition of MouseWPF ObjectDataProvider 与鼠标的静态方法 GetPosition
【发布时间】:2009-05-07 04:11:47
【问题描述】:

我正在尝试使用 ObjectDataProvider 调用 Mouse 的 GetPositition 方法,但出现此错误:

System.Windows.Data 错误:34:ObjectDataProvider:尝试调用类型上的方法失败;方法='获取位置';类型='鼠标';错误='未找到具有匹配参数签名的方法。' MissingMethodException:'System.MissingMethodException:找不到方法'System.Windows.Input.Mouse.GetPosition'。

这是我目前的代码:

<ObjectDataProvider MethodName="GetPosition" ObjectType="{x:Type sys:Mouse}"  x:Key="odp">
        <ObjectDataProvider.MethodParameters>
            <x:Type TypeName="local:TestType"/>
        </ObjectDataProvider.MethodParameters>
    </ObjectDataProvider>

使用简单的绑定:

{绑定源={StaticResource odp}}

为什么不管我做什么都报告找不到方法?

【问题讨论】:

    标签: wpf data-binding mouse objectdataprovider


    【解决方案1】:

    我猜它没有找到方法,因为您提供了错误类型的方法参数。如果您查看 Mouse.GetPosition 的 documentation,您会发现它需要一个 IInputElement 类型的参数;您正在提供Type 类型的参数。

    【讨论】:

      【解决方案2】:

      虽然 Sam 是正确的,但关键是该过程是否可以使用任何其他类型或值来完成。

      根据 MSDN,无法将其与绑定一起使用,但我相信您可以参考某种复杂性高度掩盖结果。

      真正的答案是不应该这样做。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-15
      • 1970-01-01
      • 2017-12-19
      • 1970-01-01
      • 2011-01-17
      • 2012-07-14
      • 2018-10-04
      • 1970-01-01
      相关资源
      最近更新 更多