Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / xsp / System / Web / Extensions / ui / ControlUtil.cs / 1 / ControlUtil.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Web.Resources; using System.Web.UI; namespace System.Web.UI { internal class ControlUtil { internal static Control FindTargetControl(string controlID, Control control, bool searchNamingContainers) { Control foundControl; if (searchNamingContainers) { Control currentContainer; foundControl = null; // DevDiv 73305: Do not assume starting control is not a naming container. if (control is INamingContainer) { currentContainer = control; } else { currentContainer = control.NamingContainer; } do { foundControl = currentContainer.FindControl(controlID); currentContainer = currentContainer.NamingContainer; } while (foundControl == null && currentContainer != null); } else { foundControl = control.FindControl(controlID); } return foundControl; } internal static bool IsBuiltInHiddenField(string hiddenFieldName) { // Returns true is the field name represents a hidden field generated // by ASP.NET's core runtime. This includes fields such as ViewState and // EventValidation, but not ones generated by specific controls such as // TreeView and WebParts. // If the field is less than two chars long it's not built-in. (Perf) if (hiddenFieldName.Length <= 2) { return false; } // If it doesn't start with two underscores, it's not built-in. (Perf) if (hiddenFieldName[0] != '_' || hiddenFieldName[1] != '_') { return false; } // Examine list of built-in ASP.NET fields. The list was created by examining // the ASP.NET source code for hidden field registration and rendering. // We exclude __VIEWSTATEENCRYPTED and __VIEWSTATEFIELDCOUNT from the list // since they're covered by the general __VIEWSTATE part. return hiddenFieldName.StartsWith("__VIEWSTATE", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__EVENTVALIDATION", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__LASTFOCUS", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__SCROLLPOSITIONX", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__SCROLLPOSITIONY", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__EVENTTARGET", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__EVENTARGUMENT", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__PREVIOUSPAGE", StringComparison.Ordinal); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Web.Resources; using System.Web.UI; namespace System.Web.UI { internal class ControlUtil { internal static Control FindTargetControl(string controlID, Control control, bool searchNamingContainers) { Control foundControl; if (searchNamingContainers) { Control currentContainer; foundControl = null; // DevDiv 73305: Do not assume starting control is not a naming container. if (control is INamingContainer) { currentContainer = control; } else { currentContainer = control.NamingContainer; } do { foundControl = currentContainer.FindControl(controlID); currentContainer = currentContainer.NamingContainer; } while (foundControl == null && currentContainer != null); } else { foundControl = control.FindControl(controlID); } return foundControl; } internal static bool IsBuiltInHiddenField(string hiddenFieldName) { // Returns true is the field name represents a hidden field generated // by ASP.NET's core runtime. This includes fields such as ViewState and // EventValidation, but not ones generated by specific controls such as // TreeView and WebParts. // If the field is less than two chars long it's not built-in. (Perf) if (hiddenFieldName.Length <= 2) { return false; } // If it doesn't start with two underscores, it's not built-in. (Perf) if (hiddenFieldName[0] != '_' || hiddenFieldName[1] != '_') { return false; } // Examine list of built-in ASP.NET fields. The list was created by examining // the ASP.NET source code for hidden field registration and rendering. // We exclude __VIEWSTATEENCRYPTED and __VIEWSTATEFIELDCOUNT from the list // since they're covered by the general __VIEWSTATE part. return hiddenFieldName.StartsWith("__VIEWSTATE", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__EVENTVALIDATION", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__LASTFOCUS", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__SCROLLPOSITIONX", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__SCROLLPOSITIONY", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__EVENTTARGET", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__EVENTARGUMENT", StringComparison.Ordinal) || String.Equals(hiddenFieldName, "__PREVIOUSPAGE", StringComparison.Ordinal); } } } // 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
- DelayedRegex.cs
- ElementProxy.cs
- ConfigurationSectionGroupCollection.cs
- ContainerActivationHelper.cs
- ControlBindingsCollection.cs
- DataGridCellClipboardEventArgs.cs
- InertiaRotationBehavior.cs
- CollectionContainer.cs
- WMICapabilities.cs
- PrintDialog.cs
- CodeVariableReferenceExpression.cs
- StrongName.cs
- LeftCellWrapper.cs
- Win32Native.cs
- XmlAttributeAttribute.cs
- PolygonHotSpot.cs
- TextEditorLists.cs
- TemplateAction.cs
- HttpEncoderUtility.cs
- AnonymousIdentificationSection.cs
- FunctionDescription.cs
- ModelMemberCollection.cs
- SqlDataSourceQueryEditorForm.cs
- ClientRuntimeConfig.cs
- TableSectionStyle.cs
- MemberInitExpression.cs
- NameSpaceExtractor.cs
- odbcmetadatacollectionnames.cs
- TextEditorCopyPaste.cs
- ColorTypeConverter.cs
- UnmanagedBitmapWrapper.cs
- ZipIOLocalFileHeader.cs
- ExtendedPropertyDescriptor.cs
- LocatorBase.cs
- ParagraphVisual.cs
- ECDsaCng.cs
- Timer.cs
- ReadOnlyDataSource.cs
- PartBasedPackageProperties.cs
- CommonProperties.cs
- ProfilePropertySettings.cs
- ForeignKeyFactory.cs
- TargetParameterCountException.cs
- EntityProviderServices.cs
- CfgParser.cs
- PageCodeDomTreeGenerator.cs
- SecurityDocument.cs
- XmlText.cs
- FontSourceCollection.cs
- CodeCatchClauseCollection.cs
- FixedFindEngine.cs
- RewritingSimplifier.cs
- DataSetUtil.cs
- ConfigsHelper.cs
- MultiBindingExpression.cs
- _TransmitFileOverlappedAsyncResult.cs
- Walker.cs
- FindCriteria11.cs
- HelloOperation11AsyncResult.cs
- AtlasWeb.Designer.cs
- TreeNodeEventArgs.cs
- RemotingSurrogateSelector.cs
- RegexCharClass.cs
- KeyConstraint.cs
- TaiwanCalendar.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- IdnElement.cs
- TreeIterator.cs
- DesignerHelpers.cs
- DispatcherExceptionEventArgs.cs
- PartialCachingAttribute.cs
- UnsafeCollabNativeMethods.cs
- TextBox.cs
- PathStreamGeometryContext.cs
- _AutoWebProxyScriptEngine.cs
- PenCursorManager.cs
- HwndSourceKeyboardInputSite.cs
- MultiTargetingUtil.cs
- StreamAsIStream.cs
- _HTTPDateParse.cs
- CompiledQuery.cs
- ModuleBuilderData.cs
- TreeNodeMouseHoverEvent.cs
- DataGridViewBand.cs
- IndentTextWriter.cs
- SQLGuidStorage.cs
- FileDialog.cs
- InfiniteTimeSpanConverter.cs
- BaseCollection.cs
- Attributes.cs
- categoryentry.cs
- TypeUsageBuilder.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- KerberosSecurityTokenProvider.cs
- CultureSpecificCharacterBufferRange.cs
- SpeechDetectedEventArgs.cs
- LabelEditEvent.cs
- WindowsComboBox.cs
- DbConnectionPoolOptions.cs
- EventlogProvider.cs