Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / WebControls / TableRowCollection.cs / 1 / TableRowCollection.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls {
using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing.Design;
using System.Web;
using System.Web.UI;
using System.Security.Permissions;
///
/// Encapsulates the collection of objects within a control.
///
[
Editor("System.Web.UI.Design.WebControls.TableRowsCollectionEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor))
]
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class TableRowCollection : IList {
///
/// A protected field of type . Represents the collection internally.
///
private Table owner;
///
///
internal TableRowCollection(Table owner) {
this.owner = owner;
}
///
/// Gets the
/// count of in the collection.
///
public int Count {
get {
if (owner.HasControls()) {
return owner.Controls.Count;
}
return 0;
}
}
///
///
/// Gets a referenced by the
/// specified ordinal index value.
///
///
public TableRow this[int index] {
get {
return(TableRow)owner.Controls[index];
}
}
///
///
/// Adds the specified to the end of the collection.
///
///
public int Add(TableRow row) {
AddAt(-1, row);
return owner.Controls.Count - 1;
}
///
///
/// Adds the specified to the collection at the specified
/// index location.
///
///
public void AddAt(int index, TableRow row) {
owner.Controls.AddAt(index, row);
if (row.TableSection != TableRowSection.TableBody) {
owner.HasRowSections = true;
}
}
///
///
public void AddRange(TableRow[] rows) {
if (rows == null) {
throw new ArgumentNullException("rows");
}
foreach(TableRow row in rows) {
Add(row);
}
}
///
/// Removes all controls from the collection.
///
public void Clear() {
if (owner.HasControls()) {
owner.Controls.Clear();
owner.HasRowSections = false;
}
}
///
/// Returns an ordinal index value that denotes the position of the specified
/// within the collection.
///
public int GetRowIndex(TableRow row) {
if (owner.HasControls()) {
return owner.Controls.IndexOf(row);
}
return -1;
}
///
///
/// Returns an enumerator of all controls within the
/// collection.
///
///
public IEnumerator GetEnumerator() {
return owner.Controls.GetEnumerator();
}
///
/// Copies contents from the collection to the specified with the
/// specified starting index.
///
public void CopyTo(Array array, int index) {
for (IEnumerator e = this.GetEnumerator(); e.MoveNext();)
array.SetValue(e.Current, index++);
}
///
///
/// Gets the object that can be used to synchronize access to the collection. In
/// this case, it is the collection itself.
///
///
public Object SyncRoot {
get { return this;}
}
///
///
/// Gets a value indicating whether the collection is read-only.
///
///
public bool IsReadOnly {
get { return false;}
}
///
///
/// Gets a value indicating whether access to the collection is synchronized
/// (thread-safe).
///
///
public bool IsSynchronized {
get { return false;}
}
///
/// Removes the specified from the collection.
///
public void Remove(TableRow row) {
owner.Controls.Remove(row);
}
///
/// Removes the from the collection at the specified
/// index location.
///
public void RemoveAt(int index) {
owner.Controls.RemoveAt(index);
}
// IList implementation, required by collection editor
///
object IList.this[int index] {
get {
return owner.Controls[index];
}
set {
RemoveAt(index);
AddAt(index, (TableRow)value);
}
}
///
bool IList.IsFixedSize {
get {
return false;
}
}
///
int IList.Add(object o) {
return Add((TableRow) o);
}
///
bool IList.Contains(object o) {
return owner.Controls.Contains((TableRow)o);
}
///
int IList.IndexOf(object o) {
return owner.Controls.IndexOf((TableRow)o);
}
///
void IList.Insert(int index, object o) {
AddAt(index, (TableRow)o);
}
///
void IList.Remove(object o) {
Remove((TableRow)o);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls {
using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing.Design;
using System.Web;
using System.Web.UI;
using System.Security.Permissions;
///
/// Encapsulates the collection of objects within a control.
///
[
Editor("System.Web.UI.Design.WebControls.TableRowsCollectionEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor))
]
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class TableRowCollection : IList {
///
/// A protected field of type . Represents the collection internally.
///
private Table owner;
///
///
internal TableRowCollection(Table owner) {
this.owner = owner;
}
///
/// Gets the
/// count of in the collection.
///
public int Count {
get {
if (owner.HasControls()) {
return owner.Controls.Count;
}
return 0;
}
}
///
///
/// Gets a referenced by the
/// specified ordinal index value.
///
///
public TableRow this[int index] {
get {
return(TableRow)owner.Controls[index];
}
}
///
///
/// Adds the specified to the end of the collection.
///
///
public int Add(TableRow row) {
AddAt(-1, row);
return owner.Controls.Count - 1;
}
///
///
/// Adds the specified to the collection at the specified
/// index location.
///
///
public void AddAt(int index, TableRow row) {
owner.Controls.AddAt(index, row);
if (row.TableSection != TableRowSection.TableBody) {
owner.HasRowSections = true;
}
}
///
///
public void AddRange(TableRow[] rows) {
if (rows == null) {
throw new ArgumentNullException("rows");
}
foreach(TableRow row in rows) {
Add(row);
}
}
///
/// Removes all controls from the collection.
///
public void Clear() {
if (owner.HasControls()) {
owner.Controls.Clear();
owner.HasRowSections = false;
}
}
///
/// Returns an ordinal index value that denotes the position of the specified
/// within the collection.
///
public int GetRowIndex(TableRow row) {
if (owner.HasControls()) {
return owner.Controls.IndexOf(row);
}
return -1;
}
///
///
/// Returns an enumerator of all controls within the
/// collection.
///
///
public IEnumerator GetEnumerator() {
return owner.Controls.GetEnumerator();
}
///
/// Copies contents from the collection to the specified with the
/// specified starting index.
///
public void CopyTo(Array array, int index) {
for (IEnumerator e = this.GetEnumerator(); e.MoveNext();)
array.SetValue(e.Current, index++);
}
///
///
/// Gets the object that can be used to synchronize access to the collection. In
/// this case, it is the collection itself.
///
///
public Object SyncRoot {
get { return this;}
}
///
///
/// Gets a value indicating whether the collection is read-only.
///
///
public bool IsReadOnly {
get { return false;}
}
///
///
/// Gets a value indicating whether access to the collection is synchronized
/// (thread-safe).
///
///
public bool IsSynchronized {
get { return false;}
}
///
/// Removes the specified from the collection.
///
public void Remove(TableRow row) {
owner.Controls.Remove(row);
}
///
/// Removes the from the collection at the specified
/// index location.
///
public void RemoveAt(int index) {
owner.Controls.RemoveAt(index);
}
// IList implementation, required by collection editor
///
object IList.this[int index] {
get {
return owner.Controls[index];
}
set {
RemoveAt(index);
AddAt(index, (TableRow)value);
}
}
///
bool IList.IsFixedSize {
get {
return false;
}
}
///
int IList.Add(object o) {
return Add((TableRow) o);
}
///
bool IList.Contains(object o) {
return owner.Controls.Contains((TableRow)o);
}
///
int IList.IndexOf(object o) {
return owner.Controls.IndexOf((TableRow)o);
}
///
void IList.Insert(int index, object o) {
AddAt(index, (TableRow)o);
}
///
void IList.Remove(object o) {
Remove((TableRow)o);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PeerSecurityManager.cs
- Journaling.cs
- LostFocusEventManager.cs
- SafeUserTokenHandle.cs
- DBAsyncResult.cs
- SystemEvents.cs
- PropertyEmitterBase.cs
- PropertyEmitter.cs
- ComponentResourceManager.cs
- securitycriticaldata.cs
- SqlClientWrapperSmiStreamChars.cs
- DependencyProperty.cs
- AffineTransform3D.cs
- XmlSchemaInferenceException.cs
- DefaultTraceListener.cs
- StrongNameIdentityPermission.cs
- XamlInt32CollectionSerializer.cs
- IssuanceTokenProviderState.cs
- Type.cs
- ExtenderProvidedPropertyAttribute.cs
- DataColumnMapping.cs
- ApplicationSecurityInfo.cs
- AsymmetricAlgorithm.cs
- ServicePointManagerElement.cs
- QueryParameter.cs
- SchemaImporter.cs
- WebPartsPersonalization.cs
- Speller.cs
- SvcMapFile.cs
- Expander.cs
- MetadataItem.cs
- Separator.cs
- CompositeDataBoundControl.cs
- StorageEntityTypeMapping.cs
- LinkLabel.cs
- QueryableDataSource.cs
- LineMetrics.cs
- HttpListenerContext.cs
- DetailsViewRowCollection.cs
- SystemResources.cs
- PageStatePersister.cs
- ViewManager.cs
- VirtualPath.cs
- WebBrowserPermission.cs
- EncodingDataItem.cs
- CodeIdentifiers.cs
- SpAudioStreamWrapper.cs
- IdentityReference.cs
- NetworkAddressChange.cs
- ActivityTypeResolver.xaml.cs
- EntryIndex.cs
- PropertyMapper.cs
- SecurityDocument.cs
- ExpressionBuilder.cs
- ScriptResourceHandler.cs
- ADConnectionHelper.cs
- listviewsubitemcollectioneditor.cs
- SHA384.cs
- FixedTextBuilder.cs
- SspiHelper.cs
- DataKeyArray.cs
- FtpWebResponse.cs
- ObjectStorage.cs
- SqlBuilder.cs
- glyphs.cs
- GenericTextProperties.cs
- InputProviderSite.cs
- CharUnicodeInfo.cs
- ParameterReplacerVisitor.cs
- StatusStrip.cs
- ObjectViewEntityCollectionData.cs
- Odbc32.cs
- SaveWorkflowCommand.cs
- ObjectManager.cs
- DesignerActionItem.cs
- ListView.cs
- ThreadExceptionDialog.cs
- _HeaderInfoTable.cs
- EventDescriptor.cs
- OdbcConnectionOpen.cs
- linebase.cs
- ComboBoxItem.cs
- NameNode.cs
- Scalars.cs
- SecurityValidationBehavior.cs
- SqlAliasesReferenced.cs
- ObjectDataSourceMethodEventArgs.cs
- WindowsFormsHelpers.cs
- XmlNullResolver.cs
- DrawingGroupDrawingContext.cs
- DataStreamFromComStream.cs
- LocatorGroup.cs
- CollectionBuilder.cs
- PropertyGrid.cs
- IndicFontClient.cs
- ValuePattern.cs
- GridViewUpdateEventArgs.cs
- DataSourceControlBuilder.cs
- InternalDispatchObject.cs
- PeerCollaborationPermission.cs