无法将ObjectContext从DataContext绑定到自定义附加属性

问题描述

|| 我已附加财产
    public static ObjectContext GetObjectContext(DataGrid obj)
    {
        return (ObjectContext)obj.GetValue(ObjectContextProperty);
    }

    public static void SetObjectContext(DataGrid obj,ObjectContext value)
    {
        obj.SetValue(ObjectContextProperty,value);
    }

    public static readonly DependencyProperty ObjectContextProperty =
        DependencyProperty.RegisterAttached(\"ObjectContext\",typeof(ObjectContext),typeof(FilterableGrid));
而且我还有ViewModel,它的Context属性设置为正确的ObjectContext(已通过调试器检查)。 这个XAML代码:
<DataGrid AutoGenerateColumns=\"False\" Name=\"gridOrders\"
              local:FilterableGrid.ObjectContext=\"{Binding Context}\" local:FilterableGrid.IsFilterableGrid=\"True\">
我的命名空间在哪里。 我在IsFilterableGrid chaged事件(分派的行为)中使用此代码来检索对象上下文:
ObjectContext context = FilterableGrid.GetObjectContext(sourceGrid);
并且上下文变量总是以null结尾。尽管DataContext for grid不为null,并且指向正确的对象(ViewModel)。 有任何想法吗?我似乎对此失去了理智。 编辑:我进行了更多调查,如果我绑定
local:FilterableGrid.IsFilterableGrid=\"{Binding IsFilterable}\"
,它会很好地工作。但是
local:FilterableGrid.ObjectContext=\"{Binding Context}\"
却没有!也许与传递的值类型有关(ObjectContext而不是字符串或说bool,这是原始类型吗?)?     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)