我想構建一個ASP.net用戶控件,它使用Repeater遍歷ObjectDataSource中的一些項目,我需要將其傳遞給用戶控件。雖然我不確定如何傳遞對象數據源。有人知道怎麼做嗎?ASP.Net用戶控件
0
A
回答
3
您可以在用戶控件中創建一個屬性並將其傳遞給中繼器。
public class CustomUserControl
{
private Repeater repeater;
public ObjectDataSource DataSource
{
get
{
return this.repeater.DataSource;
}
set
{
this.repeater.DataSource = value;
}
}
}
0
如果你讓你控件繼承從CompositeDataBoundControl
[ToolboxData("<{0}:TopNav runat=server></{0}:TopNav>")]
public class TopNav : CompositeDataBoundControl
您可以在的DataSourceID分配給它。
<uc1:TopNav ID="YUITopNav1" runat="server" DataSourceID="ObjectDataSource1" />
然後在你控制你實現
protected override int CreateChildControls(IEnumerable dataSource, bool dataBinding)
{
this.Repeater1.DataSource = dataSource;
this.Repeater1.DataBind();
}
當數據源是數據從您的ObjectDataSource
1
未來下面是粗糙的步驟來做到這一點(未經測試)。
列表使您的usercontrol數據綁定控件。看看這篇文章來看一個例子http://geekswithblogs.net/mnf/articles/92205.aspx。
在使用您的usercontrol的頁面中,聲明性地或以代碼形式將DataSourceId屬性設置爲您的對象數據源。
< UC1:YourUserControl的DataSourceID = 「YourObjectDataSourceID」> </UC1:YourUserControl>
列表項經由聲明性綁定表達綁定您的中繼器到內部DataSourceID屬性。
< ASP:中繼器的DataSourceID = '<%#的DataSourceID%>'> </ASP:中繼器>
相關問題
- 1. ASP.NET用戶控件
- 2. 用戶控件asp.net
- 3. ASP.Net用戶控件事件
- 4. asp.net用戶控件部署
- 5. Asp.Net MVC用戶控件
- 6. ASP.net網頁用戶控件
- 7. 用戶控件在asp.net
- 8. ASP.NET用戶控件緩存
- 9. ASP.NET:通過用戶控件
- 10. ASP.NET用戶控件繼承
- 11. asp.net用戶控件綁定
- 12. C#ASP.NET MVC用戶控件
- 13. ASP.NET Web用戶控件(C#)
- 14. ASP.NET用戶控件內容
- 15. Modal ASP.net用戶控件
- 16. Asp.net MVC用戶控件ViewData
- 17. asp.net中的用戶控件
- 18. 用戶控件和asp.net mvc
- 19. ASP.NET從另一個用戶控件刷新用戶控件
- 20. ASP.NET用戶控件:檢查,如果用戶控件是可見
- 21. 在asp.net中嵌套用戶控件通信的用戶控件
- 22. ASP.NET MVC中的用戶控件內的ASP.NET控件的命名
- 23. 用戶控件的ASP.NET事件
- 24. ASP.Net用戶控件 - VS事件連接
- 25. SharePoint Web部件和ASP.NET用戶控件
- 26. ASP.NET用戶控件 - 空引用?
- 27. 爲ASP.NET用戶控件啓用回發
- 28. asp.net ajax調用用戶控件
- 29. ASP.NET用戶控件通用編輯器
- 30. 當使用用戶控件在ASp.Net MVC
想知道,這可以通過將屬性數據類型的`Object`如進行更加靈活的[Repeater.DataSource](http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.repeater.datasource.aspx)是 – User 2012-09-06 04:43:20
是的。 (11個更多的字符去...) – 2012-09-10 19:48:34