WebUserControl dans un Repeater

Résolu
cs_obel Messages postés 34 Date d'inscription lundi 4 août 2003 Statut Membre Dernière intervention 17 juin 2008 - 18 janv. 2008 à 09:47
cs_obel Messages postés 34 Date d'inscription lundi 4 août 2003 Statut Membre Dernière intervention 17 juin 2008 - 18 janv. 2008 à 10:03
Bonjour,

j'ai un jolie message d'erreur et j'en perds un peu mon latin !!??!!

quand dans la page ASPX je mets la balise <HeadderTemplate>
j'ai le message suivant :
System.NullReferenceException: La référence d'objet n'est pas définie à une instance d'un objet.
WebUserC.SetData((DataRowView)Arg.Item.DataItem);

Si Quelqu'un a une idée elle est bien venu !!??!!

Voici mon code

page ASPX :

        <HeaderTemplate>
        </HeaderTemplate>
       
      <tr>
       <td>
          
       </td>
   </tr>
   
   

page CS :

protected void DataBound(object sender, RepeaterItemEventArgs Arg)
        {
            WebUserControl WebUserC = Arg.Item.FindControl("WebUserControl1") as WebUserControl;
            WebUserC.SetData((DataRowView)Arg.Item.DataItem);

               //ou (c'est la même chose)
             //((WebUserControl)Arg.Item.FindControl("WebUserControl1")).SetData((DataRowView)Arg.Item.DataItem);
        }

mon Usercontrol CS :

public void SetData(DataRowView dr)
        {
           
            this.Label1.Text = dr["LI_ORDER"].ToString();
            this.Label2.Text = dr["CODE"].ToString();
            this.TextBox1.Text = dr["LI_DESIGNATION"].ToString();


        }

Merci D'avance
Olivier

1 réponse

cs_obel Messages postés 34 Date d'inscription lundi 4 août 2003 Statut Membre Dernière intervention 17 juin 2008
18 janv. 2008 à 10:03
La bonne Réponse Donné par YANNVB merci Yann   !!!!



Tu vérifies e.Item.ItemType

Mais je te conseil plutot après ta première ligne de code

WebUserControl WebUserC = Arg.Item.FindControl("WebUserControl1") as WebUserControl;

de faire un tout simple test que la référence est différente de null !

if (WebUserC != null)
{
}
3
Rejoignez-nous