在一個父類中,我調用了一個在子類中定義的函數,並解析了我需要的值。C#asp.net textbox.text沒有設置?
ParentClass.ascx
protected void Page_Load
{
if(info != null)
ControlIWantToGetInformationTo.SetInfo(info);
}
ChildClass.ascx
public void SetInfo(Info info)
{
someTextBox.Text = info.TheVariableWithin.ToString();
}
我所知的是,該父類(控制)加載並執行方法,但是當ChildClass(控制)頁面加載它將以前設置的變量重置爲null,我該如何解決這個問題?
你如何設置控件內的文本值?您必須確保代碼以正確的順序運行,但由於頁面生命週期規則複雜,ASP.Net webforms可能會非常複雜。 –
Ahh聽起來像是我遇到的問題:'(你是說我必須分解所有東西嗎? – Anicho
快速修復可能是將您目前在Page_Load中的代碼移動到PreRender事件,該事件發生在生命週期,但這不是一個很好的解決方案,因爲一旦你必須依靠在控制器中使用PreRender,它就會崩潰 –