Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- TimelineGroup.cs
- GridViewDeletedEventArgs.cs
- XmlDownloadManager.cs
- TrackBarRenderer.cs
- BindingListCollectionView.cs
- ListMarkerLine.cs
- RegexRunnerFactory.cs
- TrackBarRenderer.cs
- ArraySegment.cs
- ReachPrintTicketSerializerAsync.cs
- PermissionSetEnumerator.cs
- SelectedGridItemChangedEvent.cs
- ImageCodecInfo.cs
- TextRunCacheImp.cs
- ListDataBindEventArgs.cs
- MethodBody.cs
- AssemblyCache.cs
- Evidence.cs
- GiveFeedbackEventArgs.cs
- validationstate.cs
- Int64Animation.cs
- Graphics.cs
- Utility.cs
- ZipIOExtraFieldElement.cs
- ApplicationContext.cs
- DataGridViewRowCollection.cs
- ReadOnlyDataSource.cs
- MenuAdapter.cs
- OracleSqlParser.cs
- WindowsGraphicsCacheManager.cs
- IODescriptionAttribute.cs
- Hex.cs
- ViewStateModeByIdAttribute.cs
- DataServiceExpressionVisitor.cs
- GB18030Encoding.cs
- Win32Native.cs
- PropertyAccessVisitor.cs
- MetadataItemSerializer.cs
- QueueProcessor.cs
- TreeNodeStyle.cs
- CompressEmulationStream.cs
- Helpers.cs
- RegistryDataKey.cs
- EntitySqlException.cs
- DrawTreeNodeEventArgs.cs
- QilScopedVisitor.cs
- TypeConverters.cs
- UserPersonalizationStateInfo.cs
- PersistenceContextEnlistment.cs
- SyntaxCheck.cs
- BeginEvent.cs
- CodeChecksumPragma.cs
- ReferenceConverter.cs
- SQLConvert.cs
- WebPartCollection.cs
- GeneralTransformCollection.cs
- BuildProvidersCompiler.cs
- ExtenderControl.cs
- BaseTemplateBuildProvider.cs
- Reference.cs
- SwitchExpression.cs
- SqlColumnizer.cs
- Stackframe.cs
- GlobalAllocSafeHandle.cs
- ProxyFragment.cs
- ThreadAbortException.cs
- fixedPageContentExtractor.cs
- SoapProtocolReflector.cs
- SortableBindingList.cs
- FixedElement.cs
- DefaultValueTypeConverter.cs
- InternalBase.cs
- WindowsRichEdit.cs
- StringValidatorAttribute.cs
- SQLDateTimeStorage.cs
- Enlistment.cs
- TextDecorationUnitValidation.cs
- SimpleHandlerBuildProvider.cs
- LoginName.cs
- GenericIdentity.cs
- IntSecurity.cs
- CopyOnWriteList.cs
- SecurityContext.cs
- UniqueIdentifierService.cs
- XdrBuilder.cs
- Stroke.cs
- AnimationClock.cs
- PointAnimationBase.cs
- OleDbEnumerator.cs
- LoadItemsEventArgs.cs
- WorkflowEventArgs.cs
- EncoderReplacementFallback.cs
- AspNetSynchronizationContext.cs
- Span.cs
- PropertyEntry.cs
- Asn1Utilities.cs
- XPathBinder.cs
- ProxyManager.cs
- AddingNewEventArgs.cs
- NumberAction.cs