2013-02-18 84 views
1

爲什麼我不能調用ImageButton.ImageUrl?爲什麼圖像按鈕ID不能識別

Default.aspx的:

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> 

    <asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="Test1.jpg" CommandName="Delete" OnCommand="ImageButton_Command" /> 



</asp:Content> 

Default.aspx.cs:

void ImageButton_Command(object sender, CommandEventArgs e) 
     { 
     string name = ***ImageButton1.ImageUrl***; //(Error) 

}

+1

錯誤說的是什麼? – nunespascal 2013-02-18 10:55:45

+0

CS0122:Default2.ImageButton_Command(Object,System.Web.UI.WebControls.CommandEventArgs),因爲安全性不可訪問 – 2013-02-18 11:02:22

回答

0

有沒有從提供用於該控制的代碼理由不被識別;它可能是你的.aspx.aspx.cs文件(前者與後者是否正確關聯)之間的差異?或者它可能只是一個構建問題,你是否完成了一次徹底的清理和重建?

一種解決方案,不管爲什麼發生這種情況對於您目前的情況可能是這樣的:

protected void ImageButton_Command(object sender, CommandEventArgs e) { 
    var button = sender as ImageButton; 
    if (button != null) { 
    string name = button.ImageUrl; 
    } 
} 

在這裏做的空校驗,因爲技術上這個事件處理程序可以通過比其他的東西被稱爲是非常重要的按鈕(s)訂閱提高事件,即使這個應該不是是這種情況。

+0

CS0122:Default2.ImageButton_Command(Object,System.Web.UI.WebControls.CommandEventArgs)因爲安全性不可訪問 – 2013-02-18 11:06:24

+0

嘗試製作事件處理程序方法'public'或'protected'。 – 2013-02-18 11:09:56

+0

現在感謝它的工作;) – 2013-02-18 13:04:53

相關問題