타이머를 멈출 수있는 방법은 무엇입니까? (do form1) whem이 form2에 있습니까?C# .net 다른 폼을 사용하여 폼의 타이머를 중지 하시겠습니까?
나는 시도했다. timer1.enabled = false; 전에 내가 form2에 간다
그러나 나는 아직도 그것이 달리고있는 이유를 모른다?
전에 form2 .. 나는 this.Visible = false로 form1 을 숨 깁니다.
타이머를 멈출 수있는 방법은 무엇입니까? (do form1) whem이 form2에 있습니까?C# .net 다른 폼을 사용하여 폼의 타이머를 중지 하시겠습니까?
나는 시도했다. timer1.enabled = false; 전에 내가 form2에 간다
그러나 나는 아직도 그것이 달리고있는 이유를 모른다?
전에 form2 .. 나는 this.Visible = false로 form1 을 숨 깁니다.
먼저이 기사를 보셔야합니다.
Best way to access a control on another form in Windows Forms?
그리고 @ 존 Limjap 응답을 참조;
대신 컨트롤을 공개하고, 당신은 그것의 가시성을 제어하는 속성을 만들 수 있습니다
이public boolean ControlIsVisible
{
get { return control.Visible; }
set { control.Visible = value; }
}
이 특성의 제어의 전체 집합을 노출하지 않을 것이다 컨트롤에 대한 적절한 접근을 만듭니다.
감사합니다. 이것은 나에게 도움이 될 것입니다. – Katherina
이것이 어떻게 관련되어 있는지 잘 모르겠습니다. 모든 것의 주안점으로, 컨트롤이 공개 필드 또는 속성으로 액세스되는 경우 질문에 언급되어 있지 않습니다. 둘째, 타이머 기능에 어떤 영향을 줍니까? 타이머를 속성을 통해 액세스하면 예상대로 작동하지만 필드를 통해 액세스하면 타이머가 중단되지 않는다는 것을 의미합니까? –
나는 이것에 대한 답을보고 싶다. 나는 아직 이런 종류의 코딩에 반응하는 방법을 모른다. 대답을 올리면 고마워요 – Katherina
두 가지 형태의 테스트 프로젝트를 만들었습니다. Form1에 타이머와 버튼이 있습니다. Timer가 Form1 생성자에서 시작됩니다. 단추를 누르면 타이머가 중지되고 새 Form2가 열리고 Form1이 숨겨집니다.
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
timer1.Enabled = true;
}
private void button1_Click(object sender, EventArgs e)
{
timer1.Enabled = false;
Visible = false;
new Form2().Show();
}
private void timer1_Tick(object sender, EventArgs e)
{
Text = DateTime.Now.ToString();
}
}
문제없이 타이머 정지 : 여기
코드이다.보유하고있는 코드를 제공 할 수 있습니까?
* timer1.Stop(); * – V4Vendetta
을 사용하는 것은 어떨까요? Stop과 Enabled = false는 동일합니다. Stop 메소드의 구현을 살펴보면'Enabled = false; '라는 한 줄을 볼 수 있습니다. –