Pergunta

Eu quero dar os cabeçalhos de linha e cabeçalhos de coluna um fundo personalizado a partir de uma imagem usando o DataGridView componente .net. É possível até mesmo fazer isso? E se sim, como?

Eu uso o Visual Studio 2008, a aplicação das janelas, C #.

Foi útil?

Solução

Sua possível alterar os atributos do rowheader datagridview. Você precisa se quer pega o CellPainting ou o evento RowPostPaint e manualmente desenhar a imagem na célula de cabeçalho de linha.

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

Outras dicas

Em forma de fazer isso é colocar um nome cssclass per elemento de cabeçalho no caso RowDataBound como este e atribuir a sua imagem de fundo no 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);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top