Maior Valor da GridView?
Ola turma estou com a seguinte duvida
Possuo uma GridView, gostaria de saber o maior valor da primeira colula e passar isto para uma variavel
Como é possivel fazer isto?
Estou pesquisando nos googles e foruns da vida... mas ainda não encontrei nada
grato como sempre a ajuda da turma aqui
Fabiano
Curtidas 0
Respostas
Netasper
29/10/2009
Amigo, explique melhor isto!!! Como assim o maior valor?
GOSTEI 0
Paulo Pereira
29/10/2009
Não consegui entender o objetivo disso, más você pode fazer isso no evento RowDataBound da GridView.
Veja o exemplo:
public partial class Teste : System.Web.UI.Page
{
public int maior = 0;
protected void Page_Load(object sender, EventArgs e)
{ }
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
TableCell tb = e.Row.Cells[0];
if (Convert.ToInt32(tb.Text) > maior)
{
maior = Convert.ToInt32(tb.Text);
}
}
Label1.Text = maior.ToString();
}
}
{
public int maior = 0;
protected void Page_Load(object sender, EventArgs e)
{ }
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
TableCell tb = e.Row.Cells[0];
if (Convert.ToInt32(tb.Text) > maior)
{
maior = Convert.ToInt32(tb.Text);
}
}
Label1.Text = maior.ToString();
}
}
GOSTEI 0
Paulo Sena
29/10/2009
Qual o dataSource esta usando? Essa informação é sempre importante.
Bom, caso seja DataTable vc pode utilizar o DataTable.Compute como no exemplo que segue:
DataTable table = new DataTable("teste");
DataColumn colum = null;
DataRow row = null;
int max = 0;
colum = new DataColumn("ID", System.Type.GetType("System.Int64"));
table.Columns.Add(colum);
row = table.NewRow();
row["ID"] = 1;
table.Rows.Add(row);
row = table.NewRow();
row["ID"] = 2;
table.Rows.Add(row);
row = table.NewRow();
row["ID"] = 3;
table.Rows.Add(row);
max = (int)table.Compute("MAX(ID)", "");
Em outras situações vc pode utilizar a partir do vs2005 o linq para efetuar a consulta
Bom, caso seja DataTable vc pode utilizar o DataTable.Compute como no exemplo que segue:
DataTable table = new DataTable("teste");
DataColumn colum = null;
DataRow row = null;
int max = 0;
colum = new DataColumn("ID", System.Type.GetType("System.Int64"));
table.Columns.Add(colum);
row = table.NewRow();
row["ID"] = 1;
table.Rows.Add(row);
row = table.NewRow();
row["ID"] = 2;
table.Rows.Add(row);
row = table.NewRow();
row["ID"] = 3;
table.Rows.Add(row);
max = (int)table.Compute("MAX(ID)", "");
Em outras situações vc pode utilizar a partir do vs2005 o linq para efetuar a consulta
GOSTEI 0
Netasper
29/10/2009
Use o RowDataBound como o amigo abaixo ja falou!!!
GOSTEI 0
Eleuterio Gonzalez
29/10/2009
Carregue os valores para um Array e compare para achar o maior, se entendi a sua dificuldade.
GOSTEI 0