Você está aqui: C# ::: Windows Forms ::: WebBrowser

Como retornar ou definir o conteúdo de uma caixa de texto (input type="text") em um controle WebBrowser

Quantidade de visualizações: 9543 vezes
Nesta dica mostrarei como é possível obter ou definir o conteúdo de caixas de texto de linha única (input type="text") em um documento HTML carregado em um controle WebBrowser.

Comece criando a seguinte página HTML:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<html>
<head>
  <title>Manipulando elementos HTML usando C#</title>
</head>
<body>

<form name="cadastro" method="post" action="">
  <input type="text" name="usuario" />
</form>

</body>
</html>

Note que aqui nós temos um formulário com o nome de "cadastro" e dentro deste temos uma caixa de texto com o nome "usuario". Veja o trecho de código C# que carrega esta página em um controle WebBrowser e em seguida define o texto "Arquivo de Códigos" para a caixa de texto:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button1_Click(object sender, EventArgs e){
  // vamos carregar o documento HTML a partir de um diretório local
  webBrowser1.Navigate(new Uri(@"c:arquivo de codigospagina.html"));
}

private void button2_Click(object sender, EventArgs e){
  // vamos definir o conteúdo "Arquivo de Códigos" para a caixa de texto

  // vamos obter o documento
  HtmlDocument doc = webBrowser1.Document;

  // vamos obter o formulário - aqui estamos acessando o primeiro form
  // na página HTML
  HtmlElement form = doc.Forms[0];

  // vamos obter a caixa de texto - neste caso a primeira caixa de texto
  HtmlElement txtUsuario = form.GetElementsByTagName("input")[0];
    
  // vamos definir o valor da caixa de texto
  txtUsuario.SetAttribute("value", "Arquivo de Códigos");
}

No trecho de código acima eu fiz passo-a-passo, mas, podemos fazer tudo isso em apenas uma linha (adicionei uma quebra de linha devido a restrição de espaço horizontal). Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

// vamos definir o conteúdo "Arquivo de Códigos" para a caixa de texto
webBrowser1.Document.Forms[0].GetElementsByTagName("input")[0].
  SetAttribute("value", "Arquivo de Códigos");

Vejamos agora como obter o conteúdo da caixa de texto. Para isso só precisamos alterar uma linha de código no evento Click do segundo botão:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button2_Click(object sender, EventArgs e){
  // vamos obter o conteúdo da caixa de texto

  // vamos obter o documento
  HtmlDocument doc = webBrowser1.Document;

  // vamos obter o formulário - aqui estamos acessando o primeiro form
  // na página HTML
  HtmlElement form = doc.Forms[0];

  // vamos obter a caixa de texto - neste caso a primeira caixa de texto
  HtmlElement txtUsuario = form.GetElementsByTagName("input")[0];

  // vamos obter o valor da caixa de texto
  string valor = txtUsuario.GetAttribute("value");

  // vamos mostrar o resultado
  MessageBox.Show("O valor da caixa de texto é: " + valor);
}


Link para compartilhar na Internet ou com seus amigos:

C# ::: Windows Forms ::: ListBox

Como excluir todos os itens de uma ListBox do C# Windows Forms usando a função Clear()

Quantidade de visualizações: 479 vezes
Em algumas situações nós precisamos limpar uma ListBox do C# Windows Forms, ou seja, excluir todos os seus itens de uma só vez em tempo de execução, enquanto o programa estiver rodando.

Esta tarefa pode ser realizada por meio de uma chamada ao método Clear() do objeto ObjectCollection da ListBox.

Veja um trecho de código no qual clicamos em um botão e removemos todos os itens da ListBox:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button2_Click(object sender, EventArgs e)
{
  // remove todos os itens da ListBox
  listBox1.Items.Clear();
}



C# ::: Threads ::: Thread

Como usar a classe Thread para criar threads em seus programas C#

Quantidade de visualizações: 11829 vezes
A classe Thread permite criar e controlar uma thread, além de definir sua prioridade e obter seu status. Veja a posição desta classe na hierarquia de classes da plataforma .NET:

System.Object
  System.Runtime.ConstrainedExecution.CriticalFinalizerObject
    System.Threading.Thread


Um processo pode criar uma ou mais threads para executar parte do código do programa associado a tal processo. Usamos um delegate ThreadStart ou um delegate ParameterizedThreadStart para especificar o código do programa que será executado pela thread. O delegate ParameterizedThreadStart nos permite passar dados para as funções a serem executadas pela thread.

Durante seu ciclo de vida, uma thread está sempre em um ou mais dos estados definidos pela enumeração ThreadState. Um nível de prioridade de agendamento, como definido na enumeração ThreadPriority, pode ser requisitado para a thread, mas, este comportamento nem sempre é garantido pelo sistema operacional.

O método GetHashCode() fornece identificação para threads gerenciadas. Durante o ciclo de vida de uma thread, seu código de identificação não colidirá com os códigos das demais threads, independente do domínio da aplicação a partir do qual obtemos tal valor.

Veja um trecho de código no qual criamos uma thread e a agendamos para execução paralela com a thread principal da aplicação. Note como os valores dos dois laços são exibidos de forma compartilhada pelas duas threads, ou seja, um thread exibe alguns valores e pára, para permitir que a outra faça parte do seu trabalho:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

class Program{
  static void Main(string[] args){
    // using using System.Threading;

    // vamos criar uma nova instância da clase Thread
    // e fornecer o método que será executado
    Thread thread = new Thread(contar);
     
    // vamos agendar a thread para futura execução
    thread.Start();

    // agora vamos contar na thread principal
    for (int i = 0; i <= 20; i++){
      Console.Write("#" + Thread.CurrentThread.GetHashCode() 
        + ": " + i + ", ");
    }

    Console.Write("\n\nPressione uma tecla para sair...");
    Console.ReadKey();
  }

  // método que será chamado pela thread
  static void contar(){
    for (int i = 0; i <= 20; i++){
      Console.Write("#" + Thread.CurrentThread.GetHashCode() 
        + ": " + i + ", ");
    }
  }
}

Aqui eu usei a sintáxe de criação de objetos da classe Thread que cria uma instância de ThreadStart nos bastidores, ou seja, forneci apenas o método a ser executado pela nova thread. Note também que uma chamada ao método Start() da thread não faz com que a thread seja executada imediatamente. Este método apenas torna a thread elegível para execução, ou seja, no estado "pronta" (Running). É o sistema operacional que determina quando a mesma será executada.


C# ::: Windows Forms ::: CheckBox

Como testar se uma CheckBox do C# Windows Forms está marcada ou desmarcada

Quantidade de visualizações: 22186 vezes
Em algumas situações precisamos verificar se uma CheckBox do C# Windows Forms está marcada ou desmarcada. Para isso só precisamos acessar sua propriedade Checked. Esta propriedade retorna um valor true se a CheckBox estiver marcada e false em caso contrário.

Veja o trecho de código abaixo (estou assumindo que você colocou um Button e uma CheckBox no seu formulário):

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button1_Click(object sender, EventArgs e){
  // vamos verificar se a CheckBox está marcada ou desmarcada
  if(checkBox1.Checked)
    MessageBox.Show("A CheckBox está marcada");
  else
    MessageBox.Show("A CheckBox está desmarcada");
}

Se você quiser inverter o teste, ou seja, verificar primeiro se a CheckBox está desmarcada, poderá fazer algo assim:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button1_Click(object sender, EventArgs e){
  // vamos verificar se a CheckBox está marcada ou desmarcada
  if(!checkBox1.Checked)
    MessageBox.Show("A CheckBox está desmarcada");
  else
    MessageBox.Show("A CheckBox está marcada");
}



Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 42 usuários muito felizes estudando em nosso site.