如何使用ListBox中的项列表来工具提示GridView的标题

时间:2012-09-01 20:31:19

标签: c# asp.net gridview

我有一个GridViewListBox中的项目列表。排除GridView中的第一列。

我想用ListBox中的相应项目来工具提示每个标题。我的意思是GridView2.Columns[i].HeaderText = ListBox.Items[i].Tostring()的工具提示。

以下是我的尝试:

protected void GridView2_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.Header)
        {
            for (int i = 1; i < GridView2.Columns.Count; i++)
            {
                String header = GridView2.Columns[i].HeaderText; 

                if (header.Length != 0)
                {
                   e.Row.Cells[i].ToolTip = ListBox4.Items[i].ToString().Trim();
                }
            }
        }
    }

这给了我一个异常错误:索引超出了范围。必须是非负数且小于集合的大小。

请帮助。谢谢。

1 个答案:

答案 0 :(得分:0)

protected void GridView2_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.Header)
    {
        for (int i = 1; i < GridView2.Columns.Count; i++)
        {
            String header = GridView2.Columns[i].HeaderText; 

            if (header.Length != 0)
            {
               e.Row.Cells[i+1].ToolTip = ListBox4.Items[i].ToString().Trim();
            }
        }
    }
}

假设使用 Cells [i + 1] 而不是 Cells [i]