0
我已經爲轉發器設置了作爲數據源的項目列表,並創建了自定義模板。有什麼方法可以直接訪問模板中的當前綁定項目嗎? 示例代碼下面從asp.net中的模板訪問綁定的轉發器項目
class MyObject
{
public string Somevalue{get;set;}
}
代碼在我的Page_Load
List<MyObject> selections = new List<MyObject>();
selections.Add(new MyObject());
Repeater1.ItemTemplate = new MyObjectTemplate();
Repeater1.DataSource = selections;
Repeater1.DataBind();
模板
public class MyObjectTemplate : ITemplate
{
public void InstantiateIn(Control container)
{
//Get the current item
MyObject o = ????? as MyObject;
string txt = "<h1>"+ o.Somevalue + "</h1>";
LiteralControl h1 = new
LiteralControl(txt);
container.Controls.Add(h1);
}
}
我知道,如果我只是想在中繼器中顯示的「someValue中」的值有將是實現這一目標的更簡單的方法,但顯示哪些值的實際邏輯以及如何更復雜。
'InstantiateIn'即使中繼器沒有數據綁定(上回發)實際上會調用到重建項目,因此不存在的DataItem 。這個鏈接可能會幫助你:http://community.devexpress.com/forums/t/70674.aspx –