Supprimer Gridview ligne dans rowDataBound événement asp.net c#

J'ai un gridview qui vérifie certaines valeurs sur rowDataBound événement.Je veux supprimer des lignes en fonction des conditions vérifié dans rowDataBound.J'ai essayé de mettre toutes les commandes dans un Panneau et de cacher le panneau ie,

ESSAYEZ 1 :

protected void grdFeatured_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        //some other codes here
        //IMPLEMENT FILTER ACCORDING TO ABOVE 'VIS' OUTPUT
        if (vis > 0)
        {
            Panel1.Visible = false;
        }
    }
}

PROBLÈME :

Ce bousille la pagination depuis les lignes sont masquées, mais le nombre de pages se produit et affiche les numéros de page pour les autres lignes visibles.

ESSAYER 2 :

protected void grdFeatured_RowDataBound(object sender, GridViewRowEventArgs e)
{
    GridViewRow gvr = e.Row;
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        //some other codes here
        //IMPLEMENT FILTER ACCORDING TO ABOVE 'VIS' OUTPUT
        if (vis > 0)
        {
            gvr.Parent.Controls.RemoveAt(gvr.RowIndex);
        }
    }
}

PROBLÈME :

donne une erreur :

Specified argument was out of the range of valid values.
Parameter name: index at gvr.Parent.Controls.RemoveAt(gvr.RowIndex);

ne voulez pas modifier la source de données, aidez-moi les gars .

  • Vous pourriez avoir à modifier votre source de données que les informations de la page sont calculés à partir de la source de données
  • S'il vous plaît vérifier le lien ci-dessous stackoverflow.com/questions/592106/...
InformationsquelleAutor sajanyamaha | 2012-12-21