Arquivo da tag: C#

Usando a comparação “Is” no C#


O comando de comparação Is é utilizado para comparar objetos. Veja o exemplo abaixo:

Criei um botão na tela e codifiquei uma verificação.

if (Button1 is Button)
{
Response.Write(“Button1 é um botão!”);

}

Claro que este é um exemplo muito simples e inútil mas podemos utilizar num ambiente mais complexo e usando heranças, vejam:

Imagine que temos 2 classes uma chamada Gerente e outra Pessoa e a classe Gerente herda Pessoa.

public class Pessa
{ ….. }
public class Gerente:Pessoa
{ …… }

Private void teste()
{
Gerente objGerente = new Gerente();
if(objGerente is Pessoa)
{

Response.Write(“A classe Gerente é Pessoa”)
}
else
{ … }
}

Qualquer duvida perguntem…. e deixe seu feedback

Abraços

Lineker


Exception + Sender


Hoje falaremos um pouco sobre tratamento de excessões e sobre o objeto Sender.

Exceptions

Para fazermos o tratamento de excessões utilizaremos o Try Catch do c#.
É muito simples e muito importante também, vamos a uma demonstração.

Definições:
Try = tenta
Catch = pega

Estrutura:

  Try
  {
      //Entao aqui vem o seu codigo e se houver algum excessão ( erros ) e ele cairá no Catch conforme
      // exemplo abaixo onde estamos tentando converter uma string para int.
      string texto = “Teste”;
      int numero = Convert.ToInt32(texto);
  }
  Catch(Exception ex)
  {
      //Cai estamos tratando o erro e mostrando na tela.
      Console.WriteLine(“Ocorreu um erro : ” + ex.toString());
    
  }

Podemos ter varios tipo de excessões desde SQL como uma simples conversão como mostrada acima.
Sempre devemos colocar os catchs (excessões) da mais complexa para a mais simples, no caso a mais basica (simples ) é a somente Exception. Portanto poderemos ter varios Catch ( cada um com seus exception especifico) para cada Try. Então você dera dizer “Se ocorrer um erro de SQL faça isso” , “Se ocorrer um erro de dados faça isso” e assim por diante.

Mas Lineker, como posso ver qual foi o erro ?
Quando você coloca “Catch(SQLException ex)” , ex pode ser qualquer nome que você quiser, estaremos atribuindo a excessão ao objeto ex. Se quisermos mostrar na tela o erro vamos passar o ex.toString() para aonde desejarmos. Dica: use o intellinsense para ver a propriedades das excessões ( ex: ex.[ira aparecer as propriedades])


Sender

Você perceberá este objeto quando criar um evento para por exemplo um botão. Faça o teste crie um projeto windows form, coloque um botão na tela e clique 2 vezes nele e você verá:
 
               private void button1_Click(object sender, EventArgs e) {  }

O sender nada mais é do que o objeto em si, neste caso o button.
Então se por exemplo você quer mudar a cor do botão quando ele for clicado usando o sender ficaria assim:

 private void button1_Click(object sender, EventArgs e)
        {
            Button btn = (Button)sender;
            btn.BackColor = Color.Red;
        }

Claro que essa aplicação é simple e não faz muito sentido pois poderiamos fazer isso de maneira muito mais facil mas espero ter ajudado e esclarecido algumas duvidas dos novatos.

Abraços

Lineker Tomazeli


Substring + IndexOf no C#


Bom, hoje veremos o funcionamento de 2 métodos muito úteis no dia-a-dia.

Um deles é o Substring que serve para extrairmos uma certa parte de uma string fornecendo um ponto de partida e quantos digitos para frente vamos querer extrair. Veremos um exemplo abaixo.

E o outro é o IndexOf onde server para sabermos a posição exata de tal elemento, podendo ser string, int, char e etc.

Vamos aos exemplos:

Foi criada uma aplicação windows form, com 3 labels e 1 textbox e um button.

Clicando 2 vezes sobre o botão vamos dar algumas ações a ele. Veja o codigo comentado.

obs: a imagem ficou meio cortada por causa do layout do blog, veja aqui completa

Codigo fonte

Abraços

Lineker Tomazeli