每次用户更改文本框中的文本时,我都试图让我的轨迹栏移动(更改值)。我在这里找到了类似的主题,但下面的代码没有改变:
private void RedTextBox_TextChanged(object sender, EventArgs e)
{
RedBar.Value = int.Parse(RedTextBox.Text);
}
RedTexBox
我的文本框在哪里,RedBar
是一个 trackBar
您是否输入了可以解析为数字的文本?因为这是您的代码所假设的。
如果您只想更改值(无论文本输入是什么),我会执行以下操作:
private void RedTextBox_TextChanged(object sender, EventArgs e)
{
RedBar.Value += 1;
if (RedBar.Value == RedBar.Maximum){ RedBar.Value = RedBar.Minimum; }
}
好的,我明白了!:) 它只需要:
(...) private void RedTextBox_TextChanged_1(object sender, EventArgs e)
(...)
我不知道“_1”的区别是什么,但它现在可以工作了谢谢帮助!
“_1”表示您在表单上使用新控件重建了该方法并使用了相同的名称。如果您想引入一种float
类型,int
我已经使用了两次转换来进行更改,并取得了良好的效果。
private void oGTextBox_TextChanged(object sender, EventArgs e)
{
var oGValue = double.Parse(oGTextBox.Text) * 1000;
trackBar1.Value = int.Parse(oGValue.ToString());
}
这用于比重并显示小数位...... 1.050。但正如我之前提到的。在使用相同名称的同时重建表单上的控件是您导致错误的根本原因。