我以前也提出過這個問題here。我再次面臨同樣類型的問題。我有一個用戶控件顯示來自某個業務對象的信息。我已經在兩頁上使用它。在這兩個頁面中,我調用一個帶有業務對象的方法來將用戶控件上的控件(主要是asp標籤)綁定到對象的屬性。我在aspx頁面的LoadComplete方法中調用這個方法。UserControl在一個頁面中工作,但不在其他頁面中
protected void Page_LoadComplete(object sender, EventArgs e)
{
control.LoadData(bussinessObject);
}
它在兩個頁面上工作正常。現在我有第三頁,我使用相同的控件。現在,當我打電話LoadData在這個新的一頁我得到NullReference例外:
Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information
about the error and where it originated in the code.
Exception Details: System.NullReferenceException: Object reference not set
to an instance of an object.
Source Error:
Line 91: lblOrgName.Text = obj.Name;
編輯:! lblOrgName是NULL :(請幫我
編輯2: 我通過踩在頁面頁面加載頁面之後,調用Masterpage的Page_Load,然後調用問題控件的Page Load。在本頁面加載函數的右括號(})停止時,我在立即窗口中輸入了lblOrgName,它顯示爲null :(
然後在包含用戶控件的頁面的LoadComplete中,我停下來並在即時窗口中鍵入控件的名稱。它將其中的所有標籤和其他控件都顯示爲空。
編輯3:
我已經把受保護的構造在用戶控件的建議由Stendhal的答案:
protected OrgInfo(){ }
現在,我得到這個錯誤:
Compiler Error Message: CS0122: 'Controls.OrgInfo.OrgInfo()' is inaccessible
due to its protection level.
項目根目錄中的aspx頁面和OrgInfo控件位於Controls文件夾中。
編輯4:
我試着在頁面加載方法,但可惜Controls集合的計數創建的所有控制(主要是標籤)爲0(零)!
is obj null or lblOrgName? – shahkalpesh 2009-06-25 06:34:33