WPF - 帮助将XAML绑定表达式转换为代码隐藏

Mat*_*dle 7 c# data-binding wpf

谁能告诉我什么是以下XAML片段的c#等价物?

<my:DataGridTextColumn 
                Visibility="{Binding Path=DataColumns[21].IsVisible, Source={StaticResource viewmodel}, Converter={StaticResource vc}}"                    
                Binding="{Binding SdDevDuration}"
                />
Run Code Online (Sandbox Code Playgroud)

它的可见性绑定我无法正确.DataGridTextColumn不是FrameworkElement,因此没有SetBinding方法.

提前致谢,

马特

Mat*_*dle 12

我解决了这个问题.对于任何有兴趣的人,你都可以使用BindingOperation.SetBinding method.

完整的代码是,

var newCol = new DataGridTextColumn();
newCol.Binding = new Binding("SdDevDuration");

var visiblityBinding = new Binding("IsVisible");
visiblityBinding.Source = col;
visiblityBinding.Converter = new VisibilityConverter();                        
BindingOperations.SetBinding(newCol, DataGridTextColumn.VisibilityProperty, visiblityBinding);
Run Code Online (Sandbox Code Playgroud)