WPF - 帮助转换XAML绑定表达式代码隐藏 [英] WPF - help converting XAML binding expression to codebehind

查看:300
本文介绍了WPF - 帮助转换XAML绑定表达式代码隐藏的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

谁能告诉我什么是C#相当于XAML ??

的片断的

 <我:DataGridTextColumn 
能见度={绑定路径= DataColumns [21] .IsVisible源= {StaticResource的视图模型},转换器= {StaticResource的VC}}
绑定={结合SdDevDuration}
/> ;



其知名度结合我不能得到正确的。 DataGridTextColumn不是FrameworkElement的所以没有SetBinding方法。



在此先感谢,




解决方案

我工作了这一点

。对于任何人谁是有兴趣的,你可以使用 BindingOperation.SetBinding方法。



完整的代码,



  VAR NEWCOL =新DataGridTextColumn(); 
newCol.Binding =新的绑定(SdDevDuration);

变种visiblityBinding =新的绑定(可见性);
visiblityBinding.Source =关口;
visiblityBinding.Converter =新VisibilityConverter();
BindingOperations.SetBinding(NEWCOL,DataGridTextColumn.VisibilityProperty,visiblityBinding);


Can anyone tell me what is the c# equivalent of the following snippet of XAML ??

<my:DataGridTextColumn 
                Visibility="{Binding Path=DataColumns[21].IsVisible, Source={StaticResource viewmodel}, Converter={StaticResource vc}}"                    
                Binding="{Binding SdDevDuration}"
                />

Its the visibility binding I cannot get right. DataGridTextColumn is not a FrameworkElement so no SetBinding method.

Thanks in advance,

Matt

解决方案

I worked this out. For anyone who's interested you can use the BindingOperation.SetBinding method.

The full code is,

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);

这篇关于WPF - 帮助转换XAML绑定表达式代码隐藏的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆