2011-06-14 58 views
1

我試圖從站點主站的aspx頁面訪問一個文本框的值,但它似乎不起作用,我得到一個「System.NullReferenceException:對象引用未設置爲一個對象的實例。「錯誤。感謝任何幫助。謝謝!在另一個aspx窗體中訪問站點主文本框值的問題

在我的網站主代碼後面我用get訪問: 事情是,如果我硬編碼自己的價值我get訪問返回值,我不會有任何問題

public partial class SiteMaster : System.Web.UI.MasterPage 

{ 
public string Text 
    { 
    get 
    { 
    return TextBox1.Text 
    } 
} 
} 

ASPX頁面這是試圖得到來自網站主的價值:

public partial class ProductSearch : System.Web.UI.Page 
{ 
SiteMaster sm = new SiteMaster(); 

CommerceEntities db = new CommerceEntities(); 

protected void Page_Load(object sender, EventArgs e) 

{  
try 
{   

if (sm.getSearch() != null) 

    { 
     search(sm.getSearch()); 
    } 
    }   

catch (Exception ex) 
{ 
Label1.Text = ex.ToString(); 
} 

}

+0

感謝您的更正,但主要問題仍然存在,硬編碼的作品,但從文本框中繪製值不能。確定一些更多的信息,也許我做的是不正確的:我有一個搜索文本框和搜索按鈕在我的網站主人,我使用Server.Transfer到我的搜索aspx頁面和搜索aspx頁面然後將獲得值從我的母版頁,這是一些linq查詢的搜索文本框。 – k80sg 2011-06-14 23:24:59

回答

3

你不應該創建的SiteMaster()新實例所以從您的ProductSearch

試試這個刪除行SiteMaster sm = new SiteMaster();Page_Load

SiteMaster sm = Page.Master as SiteMaster; 

if(sm!=null) 
{ 
    if (sm.getSearch() != null) 
    { 
     search(sm.getSearch()); 
    } 
} 
2
​​

這就是你怎麼會有訪問給您已正確設置了母版母版。

相關問題