1 //------------------------------------------------------------------------------
2 // <copyright file="PropertyCollection.cs" company="Microsoft">
3 // Copyright (c) Microsoft Corporation. All rights reserved.
5 // <owner current="true" primary="true">[....]</owner>
6 // <owner current="true" primary="false">[....]</owner>
7 // <owner current="false" primary="false">[....]</owner>
8 //------------------------------------------------------------------------------
10 namespace System.Data {
12 using System.Collections;
13 using System.Runtime.Serialization;
16 /// <para>Represents a collection of properties that can be added to <see cref='System.Data.DataColumn'/>,
17 /// <see cref='System.Data.DataSet'/>,
18 /// or <see cref='System.Data.DataTable'/>.</para>
21 public class PropertyCollection : Hashtable {
22 public PropertyCollection() : base() {
25 protected PropertyCollection(SerializationInfo info, StreamingContext context) : base(info, context) {
28 public override object Clone() {
29 // override Clone so that returned object is an
30 // instance of PropertyCollection instead of Hashtable
31 PropertyCollection clone = new PropertyCollection();
32 foreach (DictionaryEntry pair in this) {
33 clone.Add(pair.Key, pair.Value);
38 //3 NOTE: This should have been named PropertyDictionary, to avoid fxcop warnings about not having strongly typed IList and ICollection implementations, but it's too late now...