/// <summary> /// Pintas os valores numericos de negativos de vermelho /// Disparado ao iniciar o GridControl /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void gridView_RowCellStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowCellStyleEventArgs e) { //pinte os valores das celulas tipo decimal de vermelho // Pintas os valores numericos de negativos de vermelho //pinte os valores das celulas de vermelho if (ParseUtil.InstanceOfDecimal(e.CellValue)) { decimal value = ParseUtil.ToDecimal(e.CellValue); if (value < 0.0m) { e.Appearance.ForeColor = Color.Red; } } }
/// <summary> ///Seta o cálculo das células selecionadas no label /// Calculo em tempo de execução á medida em que as células são selecionadas. /// </summary> public void Somatorio() { //atualiza a barra AtualizarSomatorio(); var selectedCells = gridView.GetSelectedCells(); //se houver uma célula selecionada if (selectedCells != null) { //percorrer a array de celulas selecionadas foreach (GridCell item in selectedCells) { string columnName = item.Column.FieldName; int index = item.RowHandle; //numero de linhas e colunas selecionadas contagem++; //pega o valor linha selecionada e coluna especifica var valueAt = gridView.GetRowCellValue(index, columnName); if (valueAt != null) { //pegue o valores específicos para cálculo if (ParseUtil.InstanceOfDecimal(valueAt) || ParseUtil.InstanceOfDouble(valueAt) || ParseUtil.InstanceOfFloat(valueAt) || ParseUtil.InstanceOfLong(valueAt) || ParseUtil.InstanceOfInt(valueAt)) { //FlyoutPanelSomatorio soma += ParseUtil.ToDecimal(valueAt); //contagem para cálculo da média separada para os tipos de objetos especificos contagemDeCalculo++; } } } } //cacule a media somente se if (contagemDeCalculo > 0) { try { media = soma / contagemDeCalculo; } catch (DivideByZeroException) { media = 0; } } //seta a media calculada lblMedia.Text = media.ToString("N2"); //a contagem eh o numero de linhas e colunas selecionadas percorridas no laco total lblContagem.Text = contagem.ToString("N2"); //seta a soma lblSoma.Text = soma.ToString("N2"); }