2 // System.Data.DataViewSettingCollection.cs
5 // Rodrigo Moya (rodrigo@ximian.com)
6 // Miguel de Icaza (miguel@gnome.org)
7 // Tim Coleman (tim@timcoleman.com)
9 // (C) 2002 Ximian, Inc. http://www.ximian.com
10 // Copyright (C) Tim Coleman, 2002
14 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
16 // Permission is hereby granted, free of charge, to any person obtaining
17 // a copy of this software and associated documentation files (the
18 // "Software"), to deal in the Software without restriction, including
19 // without limitation the rights to use, copy, modify, merge, publish,
20 // distribute, sublicense, and/or sell copies of the Software, and to
21 // permit persons to whom the Software is furnished to do so, subject to
22 // the following conditions:
24 // The above copyright notice and this permission notice shall be
25 // included in all copies or substantial portions of the Software.
27 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
28 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
29 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
30 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
31 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
32 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
33 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
37 using System
.Collections
;
38 using System
.ComponentModel
;
40 namespace System
.Data
{
42 /// Contains a read-only collection of DataViewSetting objects for each DataTable in a DataSet.
46 public class DataViewSettingCollection
: ICollection
, IEnumerable
50 ArrayList settingList
;
56 internal DataViewSettingCollection (DataViewManager manager
)
60 #endregion // Constructors
65 public virtual int Count
{
66 get { return settingList.Count; }
70 public bool IsReadOnly
{
71 get { return settingList.IsReadOnly; }
75 public bool IsSynchronized
{
76 get { return settingList.IsSynchronized; }
79 public virtual DataViewSetting
this [DataTable dt
] {
81 for (int i
= 0; i
< settingList
.Count
; i
++) {
82 DataViewSetting dvs
= (DataViewSetting
) settingList
[i
];
93 public virtual DataViewSetting
this[string name
] {
95 for (int i
= 0; i
< settingList
.Count
; i
++) {
96 DataViewSetting dvs
= (DataViewSetting
) settingList
[i
];
97 if (dvs
.Table
.TableName
== name
)
104 public virtual DataViewSetting
this[int index
] {
105 get { return (DataViewSetting) settingList[index]; }
106 set { settingList[index] = value; }
110 public object SyncRoot
{
111 get { return settingList.SyncRoot; }
114 #endregion // Properties
118 public void CopyTo (Array ar
, int index
)
120 settingList
.CopyTo (ar
, index
);
123 public IEnumerator
GetEnumerator ()
125 return settingList
.GetEnumerator ();
128 #endregion // Methods