Imported Upstream version 4.6.0.125

Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2016-08-03 10:59:49 +00:00
parent a569aebcfd
commit e79aa3c0ed
17047 changed files with 3137615 additions and 392334 deletions

View File

@ -0,0 +1,50 @@
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);
}
}
}