Wpf 绑定到代码隐藏中的width属性
我有一种情况,我需要用一个按钮创建视图框。这方面的xaml如下:请注意viewbox的Width属性。宽度应根据滑块增加/减少(向右移动会增加宽度,向左移动会减少宽度)。正如下面列出的,我知道如何在xaml中实现它,并且它工作得很好。但我的要求是能够在代码隐藏中创建viewbox并为其指定属性Wpf 绑定到代码隐藏中的width属性,wpf,binding,code-behind,Wpf,Binding,Code Behind,我有一种情况,我需要用一个按钮创建视图框。这方面的xaml如下:请注意viewbox的Width属性。宽度应根据滑块增加/减少(向右移动会增加宽度,向左移动会减少宽度)。正如下面列出的,我知道如何在xaml中实现它,并且它工作得很好。但我的要求是能够在代码隐藏中创建viewbox并为其指定属性 <WrapPanel x:Name="_wrpImageButtons" Grid.IsSharedSizeScope="True" ScrollViewer.CanCont
<WrapPanel x:Name="_wrpImageButtons" Grid.IsSharedSizeScope="True"
ScrollViewer.CanContentScroll="True" d:LayoutOverrides="Height"
Margin="5">
<Viewbox x:Name="_ScaleButton"
Width="{Binding Value, ElementName=ZoomSlider}" Stretch="Fill">
<CustomButton:_uscVCARSImagesButton x:Name="_btnImage1"/>
</Viewbox>
</WrapPanel>
谢谢。这应该可以满足您的要求:
Viewbox x = new Viewbox();
Binding bnd = new Binding("Value") { ElementName = "ZoomSlider"};
BindingOperations.SetBinding(x, Viewbox.WidthProperty, bnd);
// ... Code to insert the Viewbox into the WrapPanel etc.
您可以在代码隐藏中相对轻松地创建绑定:
var widthBinding = new Binding("Value") { ElementName = "ZoomSlider" };
_ScaleButton.SetBinding(FrameworkElement.WidthProperty, widthBinding);
哇,我从未见过有人使用
绑定操作。SetBinding
。我相信这没有什么区别,因为它会解析为该属性。@H.B.这就是我学习它的方式,以及实例方法在幕后使用的内容。:)