Usuário com melhor resposta
Tempo de exibição panel

Pergunta
-
Respostas
-
Opa Felipe Blz ?!
O Método TrocarPenel precisa ser assíncrono pra funcionar dessa forma!
Você pode usar as seguintes opções:
private void Form1_Load(object sender, System.EventArgs e) { var work = new BackgroundWorker(); work.DoWork += delegate { System.Threading.Thread.Sleep(1000); panel1.BeginInvoke((Action)(() => { panel1.Visible = false; })); panel2.BeginInvoke((Action)(() => { panel2.Visible = true; })); }; work.RunWorkerAsync(); }
Ou:
private void Form1_Load(object sender, System.EventArgs e) { var timer = new Timer(); timer.Interval = 1000; timer.Tick += async (o, x) => await TrocarPanel(); timer.Start(); } private async Task TrocarPanel() { panel1.Visible = false; panel2.Visible = true; }
Espero ter ajudado!
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!
Rafael Almeida
Senior Developer .NET C#
Development Leader at JAMSOFT Informática
Criador e Mantenedor do Entity Framework Core for Firebird
Contribuidor do Entity Framework Core
Email: ralms@ralms.net
Blog - GitHub - LinkedIn - Twitter- Sugerido como Resposta AndreAlvesLimaModerator segunda-feira, 20 de novembro de 2017 07:36
- Marcado como Resposta Filipe B CastroModerator segunda-feira, 20 de novembro de 2017 12:34
Todas as Respostas
-
No load do seu form (ou no evento que desejar que a contagem comece) você pode usar esse código:
using System; using System.Threading.Tasks; using System.Timers; private void Form1_Load(object sender, System.EventArgs e) { Timer timer = new Timer(10000); timer.Elapsed += async ( sender, e ) => await TrocarPanel(); timer.Start(); } private Task TrocarPanel() { panel1.Visible = false; panel2.Visible = true; }
Juliano Nunes - http://linkedin.com/in/julianonunes
Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.
Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.
-
-
Felipe, se não colocar aqui os erros e como ficou o seu código, não tem como lhe ajudar.
Juliano Nunes - http://linkedin.com/in/julianonunes
Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.
Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.
-
-
Opa Felipe Blz ?!
O Método TrocarPenel precisa ser assíncrono pra funcionar dessa forma!
Você pode usar as seguintes opções:
private void Form1_Load(object sender, System.EventArgs e) { var work = new BackgroundWorker(); work.DoWork += delegate { System.Threading.Thread.Sleep(1000); panel1.BeginInvoke((Action)(() => { panel1.Visible = false; })); panel2.BeginInvoke((Action)(() => { panel2.Visible = true; })); }; work.RunWorkerAsync(); }
Ou:
private void Form1_Load(object sender, System.EventArgs e) { var timer = new Timer(); timer.Interval = 1000; timer.Tick += async (o, x) => await TrocarPanel(); timer.Start(); } private async Task TrocarPanel() { panel1.Visible = false; panel2.Visible = true; }
Espero ter ajudado!
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!
Rafael Almeida
Senior Developer .NET C#
Development Leader at JAMSOFT Informática
Criador e Mantenedor do Entity Framework Core for Firebird
Contribuidor do Entity Framework Core
Email: ralms@ralms.net
Blog - GitHub - LinkedIn - Twitter- Sugerido como Resposta AndreAlvesLimaModerator segunda-feira, 20 de novembro de 2017 07:36
- Marcado como Resposta Filipe B CastroModerator segunda-feira, 20 de novembro de 2017 12:34
-
Saudações.
System.Threading.Thread.Sleep(TimeSpan.FromSeconds(10));
Fonte: https://msdn.microsoft.com/pt-br/library/system.timespan(v=vs.110).aspx
Atenciosamente,
____________________________________
Agnaldo Guimarães
Se te ajudei, sinalize como "útil" e lembre-se de "marcar como resposta".
Quando você marca como resposta os outros visitantes encontram a solução facilmente.
** Para que o mau prevaleça basta que os bons não façam nada....
- Editado Agnaldo Guimarães segunda-feira, 20 de novembro de 2017 02:54