Xamarin Public Jenkins (auto-signing) e79aa3c0ed Imported Upstream version 4.6.0.125
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
2016-08-03 10:59:49 +00:00

51 lines
1.7 KiB
C#

namespace System.Web.DynamicData {
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using System.Security.Permissions;
/// <summary>
/// Represents a collectin of DataControlReferences
/// </summary>
public class DataControlReferenceCollection : Collection<DataControlReference> {
public DataControlReferenceCollection(DynamicDataManager owner) {
if (owner == null) {
throw new ArgumentNullException("owner");
}
Owner = owner;
}
public DynamicDataManager Owner {
get;
private set;
}
internal void Initialize() {
foreach (DataControlReference reference in this) {
reference.Owner = Owner;
}
}
[SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
protected override void SetItem(int index, DataControlReference item) {
item.Owner = Owner;
base.SetItem(index, item);
}
[SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
protected override void InsertItem(int index, DataControlReference item) {
item.Owner = Owner;
base.InsertItem(index, item);
}
[SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
protected override void RemoveItem(int index) {
this[index].Owner = null;
base.RemoveItem(index);
}
}
}