Passando uma seqüência de parte da web para controle do usuário
-
05-07-2019 - |
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 !!!
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