我有我自己的自定義類,它從DropDownList繼承。有沒有辦法來重寫Items.Add過程?怎麼樣?有沒有辦法從DropDownList的繼承類中重載Items.Add過程?
0
A
回答
1
有,爲什麼你想從這個類繼承一個具體的理由,如你提供這個類的接口?如果答案是否定的,那麼你真的應該使用構造而不是繼承;那麼你的問題就不存在了。
0
您不能覆蓋默認的添加功能 - ListItemCollection
是密封的 - 但您可以編寫一個擴展方法來擴展ListItemCollection
類。這裏有一個例子:
namespace Truthseeker.Extensions
{
using System.Web.UI.WebControls;
public static class ListItemCollectionExtensions
{
public static void Add(
this ListItemCollection collection,
ListItem item,
string extraParameter)
{
if (extraParameter.Contains("Add"))
collection.Add(item);
}
}
}
然後,您可以編寫類似:
DropDownList ddl = new DropDownList();
ddl.Items.Add(new ListItem("text", "value"), "Add");
相關問題
- 1. 有沒有辦法從C#中的多個類繼承屬性?
- 2. 有沒有辦法讓程序從UIControl繼承UIView的實例?
- 3. 有沒有什麼辦法從TriggerAction類繼承?
- 4. EditorTemplate繼承 - 有沒有辦法
- 5. 有沒有辦法繼承/繼承/擴展javascript WebSocket?
- 6. 有沒有辦法在PHP中繼承ffmpeg_movie類?
- 7. 有沒有辦法來重寫繼承的生成策略?
- 8. 在C或C++中,有沒有辦法擴展一個沒有繼承的類?
- 9. 有沒有辦法從少數類使用同名的繼承方法?
- 10. 有沒有辦法在Python中識別繼承的方法?
- 11. 有沒有辦法在VueJS中繼承帶有mixin的模板
- 12. 有沒有辦法在css中繼承這個繼承的填充?
- 13. 有沒有什麼辦法,總是從一些基類繼承類
- 14. 有沒有辦法通過繼承來管理子類的導入
- 15. 有沒有辦法使用繼承的超類方法獲取類名?
- 16. 有沒有辦法在python中重載+ =?
- 17. C++:有沒有辦法指定一個從另一個繼承的泛化類?
- 18. Typescript - 有沒有辦法做到這一點,沒有多重繼承
- 19. 類沒有繼承 - 類沒有找到
- 20. 有沒有辦法從所有的繼承樹中收集slot-definition-reader?
- 21. 有沒有辦法將模塊中的功能繼承到類中
- 22. 有沒有辦法使用類而不從ApiController繼承,用作api控制器?
- 23. 有沒有辦法使用JavaScript中的對象做簡單的「類似」繼承?
- 24. Erlang:有沒有辦法在-spec中「繼承」?
- 25. 有沒有辦法從組件中繼承.config文件中的設置?
- 26. 有沒有辦法讓類用sphinx繼承他們超類的文檔?
- 27. 有沒有辦法限制哪些類型被允許繼承我的C#類?
- 28. 有沒有辦法編輯文件夾中的所有類以從某些基類繼承?
- 29. 有沒有什麼辦法可以在php中實現多重繼承?
- 30. 有沒有辦法繼承迭代器的東西
+1 Good link :) – IrishChieftain 2010-07-12 01:05:21