1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Thread em C#

Discussão em 'Programação' iniciada por candycane, 12 de Novembro de 2008. (Respostas: 2; Visualizações: 1092)

  1. candycane

    candycane Power Member

    Boa tarde comunidade :)

    Alguém sabe dizer-se se é possível iniciar componentes do win form com threads?

    Eu tenho um componente do form que demora imenso a aparecer qd é chamado na primeira vez, se eu fechar e voltar a abrir ele já aparece rápido...

    Como posso agilizar o processo de inicialização do componente?

    Qualquer ajuda é mto bem vinda :)
     
  2. joao.miguel

    joao.miguel Power Member

    Podes fazer o seguinte:
    Crias um delegate para chamar um método teu da parte da UI.
    Ao criar o Thread (System.Threading.Thread), passas como parâmetro esse delegate.
    Inicias o Thread e no final do mesmo invocas o delegate (.Invoke).
    Do lado da UI, garante sempre que fazes o seguinte código para evitar CrossThreading:

    if (this.InvokeRequired)
    {
    this.invoke(tal e tal);
    return;
    }

    //aqui o teu código
     
  3. candycane

    candycane Power Member

    Não entendi mto bem...

    Aonde eu tenho os componentes a ser inicialidado é na parte Designer.cs do form.
    Crio um metodo com o componente que quero agilizar la dentro?

    tipo

    PHP:
    public void InicializaTabs()
    {
    ultraTab = new infragistics.Win.UltraWinTabbedMdi.UltraTabbedMdiManager(this.components);
    }

     

Partilhar esta Página