Yan*_*hof 3 c# controls numericupdown trackbar winforms
我有简单的Windows窗体应用程序(不是WPF),我有两个控件:
我想在它们之间进行一些绑定,因此如果其中一个值的值发生变化,则另一个控件将更新以显示相同的值.
这可能吗?如果是这样,我该怎么办?
谢谢.
当然,这是可能的.我不知道有什么方法可以自动连接两个控件,所以你自己就可以编写代码了.但不要担心,这并不困难.
首先,您需要将处理程序附加到每个控件在其值更改时引发的事件.从逻辑上讲,两者都控制着这个事件:ValueChanged.然后,在每个事件处理程序方法中,您可以以编程方式将另一个控件的值设置为第一个控件的新值.例如:
void myNumericUpDown_ValueChanged(object sender, EventArgs e)
{
// Sync up the trackbar with the value just entered in the spinbox
myTrackBar.Value = Convert.ToInt32(myNumericUpDown.Value);
}
void myTrackBar_ValueChanged(object sender, EventArgs e)
{
// Sync up the spinbox with the value just set on the trackbar
myNumericUpDown.Value = myTrackBar.Value;
}
Run Code Online (Sandbox Code Playgroud)
显然,为了使其正常工作,您需要确保控件具有相同的范围(最大值和最小值),或者对上面的代码添加一些错误检查.