在 Windows 窗体中链接轨迹栏和文本字段非常容易。它是这样的: textBox.DataBindings.Add("Text", trackBar, "Value");
问题是,轨迹栏只允许整数值,但我想要浮点值。所以我通常只是将该值除以 100,因为在轨迹栏上,用户无法直接看到该值。但在文本框中它是。
那么是否可以将这两者与 100 的因子联系起来?
谢谢!
您拥有的代码行将一个Binding
对象添加到文本框的DataBindings
集合中。
该类Binding
具有称为Format
and的事件Parse
,您可以使用它来执行除法(该Format
事件从轨迹栏中获取一个值并将其格式化为文本框)和乘法(该Parse
事件从文本框中获取一个值并将其缩放为轨迹栏)。
您可以使用如下中间变量:
public double v{set;get;}
public int v100
{
set { v = value / 100D; }
get { return (int)(v* 100D); }
}
并用控件使他们失明。
trackBar.DataBindings.Add(new Binding("Value", PtParams, "v100"));
textBox.DataBindings.Add(new Binding("Text", PtParams, "v"));