如何從usercontrol調用aspx內容頁面方法?如何從usercontrol調用aspx內容頁面方法? ASP.NET,C#
0
A
回答
0
在這一點上,您很可能會創建一個非常糟糕的設計。如果它需要訪問其父項,則可能不應該是UserControl。你確定你不能只添加一個事件處理程序到你的用戶控件,父頁面調用某些事件?
也就是說,您的UserControl將擁有您可以投出的.Page屬性來獲取您的父頁面。再次,這可能是一個非常糟糕的主意,你應該重新審視你的設計。
1
也許最清潔的解決方案是,以提取包含必須從該用戶控件被調用的方法的接口,然後從頁傳遞的接口控制,例如:
public interface ISomeService
{
void Method1();
bool Method2();
}
public class MyContentPage : Page, ISomeService
{
void Method1() { ... }
bool Method2() { ... }
override OnLoad(...)
{
TheUserControl.SetService(this as ISomeService);
}
}
public class MyUserControl : UserControl
{
public void SetService(ISomeService service)
{
_service = service;
}
private void SomeOtherMethod()
{
_service.Method1();
}
}
另一變型將很只需要包含用戶控件的頁面來實現所需的接口。這使得SetService()方法不需要:
public class MyUserControl : UserControl
{
private void SomeOtherMethod()
{
// page must implement ISomeService, throws an exception otherwise
(Page as ISomeService).Method1();
}
}
相關問題
- 1. 從usercontrol訪問aspx頁面的方法
- 2. ASP.NET從內容頁面更改masterpage usercontrol
- 3. 如何調用嵌套在內容頁面RadDockableObject中的usercontrol內部的方法?
- 4. 無法從aspx頁面引用UserControl
- 5. 從其父頁面調用UserControl方法
- 6. 從內容頁面調用主頁面的方法Web方法
- 7. 在aspx頁面中調用方法
- 8. 如何從aspx頁面重定向到另一個aspx頁面的方法
- 9. C#asp.net-如何從母版頁訪問內容頁面的方法?
- 10. 如何從aspx頁面訪問userControl中的web控件頁面
- 11. 從silverlight調用aspx頁面
- 12. 如何從aspx頁面調用代碼隱藏方法?
- 13. 從我的ASPX頁面調用C#類
- 14. 如何從sql server調用aspx頁面?
- 15. ASP.NET在UserControl(ASCX)中調用(ASPX)中的方法?
- 16. 來自userControl的FindControls在內容aspx中的Accordion頁面
- 17. 從父aspx調用子iframe方法頁
- 18. 調用Javascript方法從asp.net頁面
- 19. 從ASP.NET內容頁面調用onresize頁面
- 20. ASP.NET將變量從.aspx頁面傳遞給UserControl
- 21. 從靜態方法調用UserControl方法
- 22. 如何在動態添加的usercontrol中調用頁面方法?
- 23. 如何從CLASS(內部類)調用ASPX頁面
- 24. 從aspx項目調用mvc頁面
- 25. 如何使用usercontrol中現有的aspx頁面的功能?
- 26. 如何從asp.net中的UserControl調用父方法?
- 27. 從html頁面調用c#類方法
- 28. 在.aspx頁面上調整「框架」的內容,該頁面從供應商頁面抽取產品內容
- 29. 從內容頁面向主頁面usercontrol添加屬性?
- 30. 如何從aspx頁面引發usercontrol上的事件
好的。感謝您的建議 – Bendar 2010-06-14 21:25:18