Clique aqui para ler todos os artigos desta edição
Fábio Camara
Conferindo combinações legais de caracteres
Implemente, valide e confira expressões matemáticas sintaticamente corretas, ou seja, ao inserir um parênteses “(“ o seu correspondente fecha a expressão “)”. O mesmo para par de chaves “{“, “}” e par de colchetes “[“, “]”. A princípio pode-se usar expressões regulares, contudo acredito que isto é complexo demais para este caso. Implemente uma solução com a velha e infalível lógica de programação.
private bool ValidMathCase(string MathCase)
{
// Contadores do loop
int count_chaves = 0;
int count_colchetes = 0;
int count_parent = 0;
// Contador final
int count = 0;
for(int i = 0; i < MathCase.Length; i++)
{
switch(MathCase[i].ToString())
{
case "{":
count_chaves++;
break;
case "}":
count_chaves--;
break;
case "[":
count_colchetes++;
break;
case "]":
count_colchetes--;
break;
case "(":
count_parent++;
break;
case ")":
count_parent--;
break;
}
}
count = count_chaves + count_colchetes + count_parent;
return count == 0;
}
private void button1_Click(object sender, System.EventArgs e)
{
` if (ValidMathCase(textBox1.Text))
MessageBox.Show("Expressão correta!");
else MessageBox.Show("Expressão incorreta!");
}
Alexandre Tarifa
Propriedades Dinâmicas (WinForms)
É um recurso do VS.NET onde o valor de uma propriedade de um controle é armazenado no app.config podendo ser alterado a qualquer hora, até mesmo quando a aplicação estiver sendo executada e sem que a aplicação tenha que ser reiniciada ou recompilada. Exiba as propriedades (F4) de um controle qualquer, expanda a DynamicProperties e Advanced. Configure as propriedades dinâmicas disponíveis para o controle selecionado.
Selecione as opções e clique em OK. Dentro do arquivo app.config serão criadas as chaves com os valores de cada propriedade a ser alterada. Caso altere, salve o arquivo para que os novos valores passem a valer.
Ícaro Bombonato
Exporte um Datagrid para o Excel no ASP.NET
O .Net suporta exportar as informações de um Datagrid para o Excel com algumas linhas de código. Crie um novo formulário contendo os controles com as respectivas propriedades: DataGrid (Name=dgExcel e ReadOnly=True) e um Button (Name=btnGerarExcel e Text=Gerar Excel). Adicione o seguinte código para o btnGerarExcel.
‘Instancie um novo Grid
Dim Grade As New DataGrid()
Grade = dgExcel
Response.ContentType = "application/vnd.ms-excel"
Response.Charset = ""
Me.EnableViewState = False
Dim tw As New System.IO.StringWriter()
Dim hw As New System.Web.UI.HtmlTextWriter(tw)
‘Renderize o grid
Grade.RenderControl(hw)
‘Defina o encoding
Response.ContentEncoding = System.Text.Encoding.Default
Response.AddHeader("content-disposition", "attachment;filename=arquivoexcel.xls") ‘Modifique o header
Response.Write(tw.ToString())
Response.End()