我有一個ModalPopupExtender(mpe),它會在單擊asp:按鈕時顯示。該按鈕調用一個JavaScript函數,然後調用webmethod。 webmethod位於頁面後面的代碼中。」System.NullReferenceException - 對象引用未設置爲對象的實例。「 Webmethod,用戶控件
webmethod將字符串變量傳遞給後面代碼中的另一個方法。它決定了mpe的功能。這個邏輯背後的想法是,當你點擊按鈕時,我想啓用MPEG的某些部分並禁用其他部分。這是因爲mpe有幾個功能。
.aspx的按鈕和用戶控件
<uc2:IMG ID="IMG1" runat="server" />
<asp:Button ID="btnAddNewImg" runat="server" Text="Add New Image" onclientclick="ShowImgPopupScreen()" />
JavaScript函數
<script type="text/javascript">
function ShowImgPopupScreen() {
// call server side method
PageMethods.AddNewImg();
}
</script>
ASPX.CS代碼
[System.Web.Services.WebMethod]
[System.Web.Script.Services.ScriptMethod]
public static void AddNewImg()
{
string option = "add";
image_loader_cms cms = new image_loader_cms();
cms.SetButtons(option);
}
protected void SetButtons(string add)
{
if (add == "add")
{
IMG1.Add = true;
}
else
{
IMG1.Edit = true;
}
}
個ASCX.CS
public bool Add
{
get
{
return btnAdd.Enabled;
}
set
{
btnAdd.Enabled = value;
}
}
public bool Edit
{
get
{
return btnUpdate.Enabled;
}
set
{
btnUpdate.Enabled = value;
}
}
代碼步入IMG1.Add = true;
使用斷點時,但該行的代碼後,我收到此錯誤信息。
微軟JScript運行時錯誤:Sys.Net.WebServiceFailedException: The server method 'AddNewImg'
失敗,出現以下錯誤:
System.NullReferenceException-- Object reference not set to an instance of an object.
這個問題我抓我的頭。
我認爲IMG1 == null – Reniuz
可能重複[什麼是.NET中的NullReferenceException?](http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-in-net) –
Do我必須創建一個用戶控件的新實例? –