說我有以下類:我如何添加一個ObservableCollection <Class<T>>使用繼承對於T
public class BaseConfig
{
}
public class SpecialConfig : BaseConfig
{
}
然後,我有一個泛型類的定義將包含這些:
public class ConfigList<T> : ObservableCollection<T> where T : BaseConfig
{
}
然後我有另一個類,我想擁有一個ConfigList對象的集合:
public class ConfigurationManager
{
private ObservableCollection<ConfigList<BaseConfig>> _configItems
public ConfigurationManager()
{
_configItems = new ObservableCollection<ConfigList<BaseConfig>>();
}
public void AddConfigList(ConfigList<BaseConfig> configList)
{
_configItems.Add(configList);
}
}
T母雞在應用程序代碼中的其他地方我有這樣的:
ConfigurationManager _manager = new ConfigurationManager();
ConfigList<SpecialConfig> _configuration = new ConfigList<SpecialConfig>();
對於一些奇怪的原因,我認爲C#將使以下因繼承,但事實並非如此。我想知道的是,我該如何完成將一個對象添加到泛型類型的集合中,比如我在下面做的(這肯定是人們遇到的一個常見問題,當然有一個簡單的模式/解決方案可以實現這一點):
_manager.AddConfigList(_configuration);
如何從'ConfigurationManager'返回列表? – svick