2009-08-07 9 views
0
protected void gvdet_DataBound(object sender, GridViewRowEventArgs e) 
{ 
    string employeeName = dsOLDData.SelectedItem.Text; -- ERROR HERE :(

    if (e.Row.RowType == DataControlRowType.DataRow) 
    { 

     foreach (TableCell c in e.Row.Cells) 
     { 
      if (c.Controls[0] is DataBoundLiteralControl) 
      { 
       DataBoundLiteralControl ctl = (DataBoundLiteralControl)c.Controls[0]; 
       if (ctl.Text.Contains(employeeName)) 
       { 
        c.BackColor = System.Drawing.Color.Yellow; 
        c.ForeColor = System.Drawing.Color.Blue; 
       } 
      } 

     } 
    } 
    } 
} 

ERROR: Erreur 2 'System.Web.UI.WebControls.LinqDataSource' ne contient pas de définition pour 'SelectedItem' et aucune méthode d'extension 'SelectedItem' accepter un premier argument de type « System.Web.UI. WebControls.LinqDataSource 'peut être trouvé (manque-t-il une directive using ou une référence d'assembly?)Erreur: manque une directive using ou une référence d'assembly?

+1

Qu'est-ce que dsOLDData? Est-ce un ensemble de données? La liste déroulante? Nous avons besoin de plus de détails ou nous ne pouvons pas vous aider. –

+0

Salut David, j'apprécie le montage. J'espère que je peux obtenir une solution utile. – Yves

+0

Oui David, c'est une liste déroulante – Yves

Répondre

1

Êtes-vous vraiment sûr, "dsOLDData" est une liste déroulante. Le errormessage semble dire que c'est une instance de System.Web.UI.WebControls.LinqDataSource

Les « ds » au début de « dsOLDData » serait un signe pour moi aussi, que c'est un D ata S ource

+0

Salut Peter, Vous avez raison, j'ai mis par mégarde ma source de données au lieu du ddl. Merci - bon oeil. – Yves

+0

Yonita, comprenez-vous maintenant ce que ce message d'erreur vous disait? C'est un message d'erreur très commun. Cela vous sera très utile si vous apprenez ce que cela signifie. –

0

Essayez d'appeler DataBind sur votre DropDownList avant d'accéder à l'élément sélectionné. Il peut ne pas avoir lié à des données au point que votre GridView fait. par exemple.

dsOLDData.DataBind(); 
string employeeName = dsOLDData.SelectedItem.Text; 

Je ne sais pas si cela va aider, mais ça vaut le coup ...

Questions connexes