2009-02-24 7 views
0

J'ai un usercontrol usercontrol.Inside J'ai datalist a besoin et sqldatasource.Sqldatasource un paramètre à DataBind le datalist.Usercontrol obtient un paramètre de cette façon,Datalist placé à l'intérieur d'un usercontrol

private string _urunIDparam; 
    public string urunIDparam 
    { 
     get { return _urunIDparam; } 
     set {_urunIDparam = value; } 
    } 

Et ce paramètre est ajouté à la SqlDataSource OnPreRender usercontrol de cette façon,

protected override void OnPreRender(EventArgs e) 
{ 
    SqlDataSourceHareketler.SelectParameters["urunID"].DefaultValue = urunIDparam; 
    DataListHareketAna.DataBind(); 
    base.OnPreRender(e); 
} 

Et le paramètre usercontrols est donnée à partir d'un bouton placé page ASPX comme celui-ci,

protected void Button1_Click(object sender, EventArgs e) 
{ 
    MyUserControl1.urunIDPARAM = urunID; 
} 

Et bouton et usercontrol est placé dans un UpdatePanel à l'intérieur d'une page ASPX comme celui-ci,

<asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
    <ContentTemplate> 
     <uc2:MyUserControl ID="MyUserControl1" runat="server" /> 
     <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click"/> 
    </ContentTemplate> 
</asp:UpdatePanel> 

Et le problème quand je frappe un bouton à l'intérieur datalist, mon usercontrol disparait (datalist perd ses articles).

Répondre

1

Il semble que vous ayez besoin de vérifier vos fonctions dans les contrôles. J'ai déjà vu ce problème, et je pense que c'est ce que je devais faire, mais cela fait longtemps.

if (!IsPostback) { 
    //LoadData 
} 
+0

merci pour votre indice, mais j'ai déjà essayé ispostback mais le problème persiste. – slayer35

Questions connexes