Soirée tous.Info-bulle dans gridview en utilisant la méthode de dictionnaire
J'ai le code suivant que j'ai besoin d'examiner - fondamentalement je m'attache aux pailles ici. J'ai un gridview auquel je voudrais assigner des info-bulles.
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]);
}
}
}
}
}
Essentiellement ce que je suis en train de réaliser est un outil de pointe qui apparaît par chaque tête de colonne (c.-à-ID de produit et description du produit.)
Cependant, lorsque j'utilise le code ci-dessus, je reçois les éléments suivants Message d'erreur "La clé donnée n'était pas présente dans le dictionnaire." Cela apparaît sur la ligne
cell.Attributes.Add("title", headerTooltips[headerText]);
.
Quelqu'un peut-il signaler l'erreur dans mes habitudes? Merci pour toute aide ou suggestion.
Vous dites que vous voulez afficher les info-bulles sur la ligne d'en-tête, mais votre code suggère que vous allez utiliser les info-bulles pour afficher les détails de ce produit, etc. Donc, si un correspond de produits spécifiques à la ligne d'en-tête, quelles sont les données contenues dans les lignes réelles de la grille? Êtes-vous sûr de ne pas vouloir d'info-bulles sur les cellules des lignes de données plutôt que sur l'en-tête? –
Bonjour Anders - pas vraiment les info-bulles sur la ligne d'en-tête. J'ai utilisé l'ID de produit et la description comme exemples, en réalité ils seraient codés ce qui signifierait peu pour l'utilisateur et donc je voudrais assigner une pointe d'outil à chacun des en-têtes de colonnes pour expliquer ce qu'est réellement ce titre ... la confusion. C'est probablement juste un très mauvais code que j'ai essayé de m'adapter à ma façon novice. Si vous pouvez penser à une alternative pour réaliser cette tâche, s'il vous plaît faites le moi savoir! – MrDean