Question

Je veux donner les en-têtes de ligne et les en-têtes de colonnes d'un arrière-plan personnalisé à partir d'une image en utilisant le composant .NET DataGridView. Est-il possible de faire encore cela? Et si oui, comment?

J'utilise Visual Studio 2008, l'application Windows, C #.

Était-ce utile?

La solution

Il est possible de modifier les attributs de la RowHeader DataGridView. Vous devrez soit gérer la CellPainting ou l'événement RowPostPaint et dessiner manuellement l'image dans la cellule d'en-tête de ligne.

 protected override void  OnRowPostPaint(DataGridViewRowPostPaintEventArgs e)
        {
             // Your code to insert image/content per cell goes here    
        }

Autres conseils

Sur le chemin de le faire est de mettre un nom CssClass par élément d'en-tête en cas RowDataBound comme celui-ci et affecter votre image d'arrière-plan dans le css.

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.Header)
        {
            foreach (TableCell c in e.Row.Cells)
            {
                c.CssClass = "bgimage";
            }
        }
    }

css:

.bgimage{ background-image:url(images/arrow-red-large-down.gif);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top