DataGridTextColumn Visibility Binding

后端 未结 3 1522
滥情空心
滥情空心 2020-11-30 07:41

I\'m trying to bind column visibility to that of another element like this:



        
3条回答
  •  南方客
    南方客 (楼主)
    2020-11-30 08:26

    The solution from Johan Larsson works perfectly, only the FallbackValue from the Binding isn't forwarded, so I've changed it like this:

    private object DefaultValue(IServiceProvider serviceProvider)
    {
        if (Binding.FallbackValue != null)
            return Binding.FallbackValue;
    
        var provideValueTarget = (IProvideValueTarget)serviceProvider.GetService(typeof(IProvideValueTarget));
        if (provideValueTarget == null)
        {
            throw new ArgumentException("provideValueTarget == null");
        }
        var dependencyProperty = (DependencyProperty)provideValueTarget.TargetProperty;
        return dependencyProperty.DefaultMetadata.DefaultValue;
    }
    

    So it could be used like this, here for example for Binding to a Header:

    
    

提交回复
热议问题