2016-03-04 45 views
0

我一直在試圖從我的.ascx.cs調用一個方法到我的.aspx.cs代碼隱藏。例程將允許.aspx頁面上的複選框在我的用戶控制頁面上隱藏/顯示文本框和標籤。這是我到目前爲止。我有標籤的可見性和文本框在屬性中設置爲false。試圖從控制頁調用方法

控制代碼隱藏頁:背後

public partial class Controls_udc : System.Web.UI.UserControl 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 

    private bool MakeVisible(object sender, EventArgs e) 
    { 
     return (labelComments.Visible == true) && (textComments.Visible == true); 
    } 

代碼.aspx頁:

public partial class _Default : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 
    private void CheckBox1_CheckedChanged(object sender, EventArgs e) 
    { 
     Controls_udc.MakeVisible(); 
    } 

} 

我收到的編譯器錯誤是編譯器錯誤信息:CS0117: 'Controls_udc' 不包含一個定義'MakeVisible'。

我相信我在正確的軌道上,但只需要幾個指針。

回答

1

MakeVisible方法必須是public但在您的代碼中它是private。它應該改變。

+0

謝謝。我將其更改爲公共,但我收到另一個編譯器錯誤。 CS1501:方法'MakeVisible'沒有重載需要0個參數。 – jsnhndrsn1985

+0

@ jsnhndrsn1985這是因爲你的方法需要兩個參數。一個對象和一個EventArgs。 – mason

+0

向Controls_udc頁面類中添加一個constactor不要有參數。例; public void Controls_udc(){} –