2010-07-11 52 views

回答

1

有,爲什麼你想從這個類繼承一個具體的理由,如你提供這個類的接口?如果答案是否定的,那麼你真的應該使用構造而不是繼承;那麼你的問題就不存在了。

請參閱Prefer composition over inheritance?

+0

+1 Good link :) – IrishChieftain 2010-07-12 01:05:21

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"); 
相關問題