如何将winforms Opacity绑定到TrackBar(滑块)

时间:2010-04-02 16:29:48

标签: c# winforms data-binding trackbar

我有一个BindingSource的winform,其Opacity中有一个名为DataSource的int属性。我还想在winform上使用TrackBar来控制winform的Opacity

我已将Value上的TrackBar属性绑定到Opacity并且功能正常,滑动TrackBar会将变量从{{1}更改为{1} }(0)到TrackBar.Minimum(1)。

我还将winform的TrackBar.Maximum属性绑定到此值,因为Opacity的值仅从+/- 1的最小值到最大值而不是+/- .1左右(如TrackBar那样),它不能正确淡化winform。相反,0将使其变为不透明,1将使其完全可见。

我需要一种方法在上述体系结构中工作,但让Opacity以小于1的定义增量将其值从0更改为1.

2 个答案:

答案 0 :(得分:2)

如果你是数据绑定,那么你有一个数据类,它有一个double OpacityForSlider(或类似的东西),你绑定了Value的{​​{1}}。

将滑块min和max设置为0-100并将其添加到数据类

TrackBar

现在将您的winforms public double OpacityForForm { get { return this.OpacityForSlider / 100; } } 绑定到该{,而不是Opacity

答案 1 :(得分:2)

我认为最简单的方法是创建一个直接从UserControl继承的TrackBar,隐藏ValueSmallChange,{{1} },MinimumMaximum属性具有相同名称的TickFrequency属性:

double