我有以下代碼,我需要查看 - 基本上我抓着這裏的吸管。我有一個gridview,我想分配工具提示。
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Header)
{
foreach (TableCell cell in e.Row.Cells)
{
foreach (System.Web.UI.Control ctl in cell.Controls)
{
if (ctl.GetType().ToString().Contains("DataControlLinkButton"))
{
Dictionary<String, String> headerTooltips = new Dictionary<String, String>();
headerTooltips["Product ID"] = "A unique product ID";
headerTooltips["Product Description"] = "Description of product";
String headerText = cell.Text;
cell.Attributes.Add("title", headerTooltips[headerText]);
}
}
}
}
}
本質上講,我想實現的是由每個列標題會出現一個工具提示(即產品標識和產品說明。)
然而,當我使用上面的代碼,我收到以下錯誤消息「給定的密鑰不在字典中。」這出現在
cell.Attributes.Add("title", headerTooltips[headerText]);
行。
有人可以用我的方式指出錯誤嗎?感謝您的任何幫助或建議。
你說你要顯示的標題行的提示,但你的代碼表明您要使用的工具提示,以顯示產品的詳細信息等,因此,如果一個特定的產品對應到標題行,網格的實際行中包含哪些數據?你確定你不想在數據行的單元而不是標題上使用工具提示嗎? – 2009-12-14 21:13:46
你好安德斯 - 沒有肯定的標題行上的工具提示。我使用產品ID和描述作爲示例,實際上它們將被編碼,這對用戶意義不大,因此我想爲每個列標題分配一個工具提示,以解釋標題實際上是什麼... ...道歉混亂。 這可能只是我嘗試在新手上適應的很糟糕的代碼。如果你可以想出一個替代方案來完成這個任務,請讓我知道! – MrDean 2009-12-14 21:16:40