我有一个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.
答案 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
,隐藏Value
,SmallChange
,{{1} },Minimum
和Maximum
属性具有相同名称的TickFrequency
属性:
double