Datalist размещен в пользовательском контроле - PullRequest
0 голосов
/ 24 февраля 2009

У меня есть usercontrol. Внутри usercontrol У меня есть datalist и sqldatasource.Sqldatasource нужен параметр для привязки данных datalist.Usercontrol получает параметр таким способом,

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

И затем этот параметр добавляется в sqldatasource в onprerender usercontrol таким образом,

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

И параметр usercontrols дается от кнопки, которая помещается в aspx-страницу следующим образом:

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

И кнопка, и пользовательский контроль помещаются в панель обновления внутри страницы aspx, как это,

<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>

И проблема, когда я нажимаю кнопку внутри списка данных, мой пользовательский контроль исчезает (поставщик данных теряет свои элементы).

1 Ответ

1 голос
/ 24 февраля 2009

Похоже, вам, возможно, потребуется выполнить обратную проверку ваших функций в элементах управления. Я уже видел эту проблему прежде, и я думаю, что это то, что я должен был сделать, но это было некоторое время.

if (!IsPostback) {
  //LoadData
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...