2013-01-31 38 views
1

我看了全谷歌,没有人会问这个问题,或者没有任何答案。我所要做的就是让我textbox一个slider的最大值的文字,我试图做到这一点:滑块最大值= textbox1.text

此代码是我textBox1_TextChanged事件

textBox1.Text = slider1.Maximum.ToString(); 

和这样的:

this.slider1.Maximum = textBox1.Text; 

还有一些其他的,但它不工作,它说:

Cannot Implicitly Convert 'String' to 'Int' 

如果有人知道如何做到这一点,请在这里发布或告诉我在哪里可以找到代码。


第二问题

我还有一个问题,我有这样的代码:

private void slider1_ValueChanged(object sender, EventArgs e) 
    { 
     textBox1.Text = slider1.Value.ToString(); 
    } 

它显示了滑得很好,但你抢住宿的滑动片的价值在最后,如果这太混乱了,这里是我的问题:

当我抓住滑块textBox1中的文本是滑块的值。 问题是,您抓取的更改值的滑块部分停留在最后。有没有人知道如何显示抓取部分的真实值而不是结束?

回答

3

你应该使用Int32.TryParse

int sliderValue = 0; 
Int32.TryParse(textBox1.Text, out sliderValue); 

如果尝试解析失败提供错误消息解释为什么..

+0

谢谢,工作的数量,这将崩溃,可以请你看看,如果你能解决我的第二次编辑我的问题? – Dozer789

+1

如果您遇到更多问题,您应该开始一个新问题 – DGibbs

2

您可以通过使用ParseTryParse

this.slider1.Maximum = int.Parse(textBox1.Text); 

但对于更多的纠正发现这里,让你输入常是一个数,使用TryParse

int maxValue; 
int.TryParse(textBox1.Text, out maxValue); 
+3

不用说,如果你把以外的任何其他在文本框中... – KingCronus

0
const int defaultMaximumSlider = 0; // Default value for slider maximum 
int value; 

if(int.TryParse(textBox1.Text, out value)) //Try to get our value 
{ 
    this.slider1.Maximum = value; 
} 
else // and if it isn't successful assign our default 
{ 
    this.slider1.Maximum = defaultMaximumSlider; 
}