2012-08-03 53 views
0

我有一個子佈局,我想靜態綁定幾個不同的佈局。因此,我不想在設計器中對sublayout的每個實例聲明性地指定路徑屬性。我真正想做的是有一個常量文件(或配置文件),其中包含sublayouts的路徑,然後我使用在包含sublayouts的文件背後的代碼中給定的sublayout設置路徑。在代碼隱藏中設置子佈局的路徑屬性不起作用

但是,當我嘗試在on_loadon_init中設置路徑屬性時,子貼圖不會呈現到頁面。我錯過了什麼嗎?

例子:

private void Page_Load(object sender, EventArgs e) { 
    plBakingTips.Path = "/layouts/User Defined/Sublayouts/Products/Product List/Product/Product Bake It Yours.ascx"; 
} 
+1

爲什麼你想靜靜地說(我認爲你的意思是動態的)添加一個佈局代碼後面的代碼?有什麼原因讓你轉向這樣的解決方案? Sitecore可以爲您做到這一點。 – Younes 2012-08-03 07:43:40

回答

0

這應該是正是你需要的。它可以讓你在代碼中添加一個子佈局落後

Temporarily change a Sitecore item's layout

我用來改變子佈局的數據源和它工作得很好。

+0

我認爲這不是對這個問題的回答。同時更改子佈局的數據源與暫時更改佈局完全不同...... – Younes 2012-08-03 09:13:20

+0

更改數據源是您可以使用此方法執行的一個示例。答案解釋的主要問題是在代碼中更改/插入佈局,這是(我認爲)用戶要求的內容... – 2012-08-03 11:08:20

1

嘗試用〜

Path = "~/layouts..."; 

而且前綴的路徑,這是一個文件系統路徑,而不是sublayout項目路徑(我提到這一點,因爲你的路徑看起來像項目路徑)

相關問題