šljaker
šljaker

Reputation: 7374

ASP.NET WebForms - How to set colspan for header row in the GridView?

I want to set colspan for the header row in the grid view to look the same as on the image below:

alt text

Html code is:

<html>
    <body>
        <table border="1">
        <tr>
            <th colspan=2>Header</th>
        </tr>
        <tr>
            <td>row 1, cell 1</td>
            <td>row 1, cell 2</td>
        </tr>
        <tr>
            <td>row 2, cell 1</td>
            <td>row 2, cell 2</td>
        </tr>
        </table>
    </body>
</html>

I don't know how to create the same effect in the asp.net and I don't want to create the table by hand using for loops.

Thank you!

Upvotes: 5

Views: 24960

Answers (2)

Rubi
Rubi

Reputation: 9

protected void btnAction_Click(object sender, EventArgs e)
{
    string value = txtDetails.Text;
    char[] delimiter = new char[] { ';','[' };
    string[] parts = value.Split(delimiter, StringSplitOptions.RemoveEmptyEntries);
    for (int i = 0; i < parts.Length; i++)
    {
        txtFName.Text = parts[0].ToString();
        txtLName.Text = parts[1].ToString();
        txtAge.Text = parts[2].ToString();
        txtDob.Text = parts[3].ToString();
    }
}

Upvotes: -1

šljaker
šljaker

Reputation: 7374

I attached to the PreRender event:

protected void GridView1_PreRender(object sender, EventArgs e)
{
    var gridView = (GridView) sender;
    var header = (GridViewRow) gridView.Controls[0].Controls[0];

    header.Cells[0].Visible = false;
    header.Cells[1].ColumnSpan = 2;
    header.Cells[1].Text = "Header";
}

Upvotes: 10

Related Questions