0

GridViewとアイテムのリストがありますListBox。の最初の列を除く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();
                }
            }
        }
    }

これにより、例外エラーが発生します。インデックスが範囲外でした。負ではなく、コレクションのサイズよりも小さい必要があります。

親切に助けてください。ありがとうございました。

4

1 に答える 1

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]の代わりにCells [i+1]を使用するとします。

于 2012-09-08T15:12:52.127 に答える