Pergunta

public class ToolPartGetLists : Microsoft.SharePoint.WebPartPages.WebPart, ICommunicationInterface
{
    private bool _error = false;

    //.........

    protected override void CreateChildControls()
    {
        if (!_error)
        {
            try
            {
                ViewState["prodList"] = SelectedList;
                //base.CreateChildControls();
                Office_Cp = (OfficeCPS)Page.LoadControl(@"/_controltemplates/OfficeCP/OfficeCP.ascx");
                this.Controls.Add(Office_Cp);
                // Your code here...
                //this.Controls.Add(new LiteralControl(this.MyProperty));
            }
            catch (Exception ex)
            {
                HandleException(ex);
            }
        }
    }
}

public class OfficeCPS : System.Web.UI.UserControl
{
    //I want the value of Selected List here
    public string prodDataList = "";
    //.......
}

Eu tentei ViewState, não funciona !!!

Foi útil?

Solução

Dentro do try você poderia usar:

Office_Cp = (OfficeCPS)Page.LoadControl(@"/_controltemplates/OfficeCP/OfficeCP.ascx");
this.Controls.Add(Office_Cp);
Office_Cp.prodDataList = SelectedList;

Se isto não funciona pay cuidadosa atenção à forma como você está lidando com a ASP.NET ciclo de vida .

Observe também que seria melhor prática para esconder prodDataList atrás de uma propriedade ou método.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top