2012-08-23 120 views
0

我必须在按住按钮的同时增加滑块控件的值。
只要我按住滑块不断增加的按钮。WP7,C#,通过按住按钮增加滑块值

例如,该场景对于音量控制而言是典型的。
我有一个音量滑块和一个按钮Increase音量。
现在只要我按住Increase按钮,滑块中的音量(标记)就会不断增加,直到我松开按钮。

我所取得的成就是改变了个别的滑块的值点击按钮上的事件。
请提出您的建议,告诉我如何实现这一目标。

回答

0
public bool Ok = false; 

    public void Do() 
    { 
     while (Ok) 
     { 
      this.Text += "."; 
      System.Threading.Thread.Sleep(100); 
      Application.DoEvents(); 
      //I added dots to the form text , You do your own mission 
     } 
    } 

    private void btnLouder_MouseDown(object sender, MouseEventArgs e) 
    { 
     Ok = true; 
     Do(); 
    } 

    private void btnLouder_MouseUp(object sender, MouseEventArgs e) 
    { 
     Ok = false; 
    } 

添加跟踪条控件到窗体,然后
这一个替换当块中的代码,它正是你想要的:

if(trackBar1.Value < trackBar1.Maximum) 
    trackBar1.Value += 1; 
+1

请使用RepeatButton而不是此。 Click事件中的一段时间(true)循环,Thread.Sleep和Application.DoEvents彼此伤害了我的眼睛。 –

1

按照book应该的RepeatButton 。在这种情况下,它将非常适合您的需求。尽量避免线程睡眠。冻结不是很好的事情。这是重构的第一个候选人之一。