将两个不同属性绑定在一起的简单方法?

时间:2011-08-17 17:08:21

标签: c# winforms data-binding binding

在我的应用程序中,我总是希望hscrollbar.LargeChange等于panel.Width。目前,我在调整事件,绘制事件等方面将hscrollbar.LargeChange设置为panel.Width。我对绑定知之甚少,所以我想知道是否可以这样做。

很抱歉,如果这是一个简单的问题,但当我尝试使用Google搜索绑定和c#时,我收到了很多关于其他平台的复杂信息。

2 个答案:

答案 0 :(得分:1)

实际上,有一种方法可以将HScrollBar的LargeChange属性绑定到面板的Width属性,但我想我刚刚在.NET 4中发现了一个关于此问题的错误,因为它可以正常工作。 NET 3.5。

基本上,您需要手动创建Binding对象并将其分配给HScrollBar的DataBindings集合,如下所示:

hScrollBar1.DataBindings.Add(new Binding("LargeChange", panel1, "Size.Width", true, DataSourceUpdateMode.OnPropertyChanged));

同样,这在.NET 4中不起作用,但它在.NET 3.5中起作用。我可能会提交错误报告。

干杯

答案 1 :(得分:0)

是的,你在这里的方式,在panel.Resize事件是在Windows窗体中执行它的唯一方法。