Code:
/ DotNET / DotNET / 8.0 / untmp / Orcas / RTM / ndp / fx / src / xsp / System / Web / Extensions / ui / ControlUtil.cs / 2 / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- __Error.cs
- SessionStateModule.cs
- WebBrowserDesigner.cs
- ProtocolElement.cs
- BridgeDataRecord.cs
- ComponentResourceManager.cs
- ListItemConverter.cs
- ProcessModuleDesigner.cs
- DataGridViewCellParsingEventArgs.cs
- AttributeProviderAttribute.cs
- WorkItem.cs
- TextServicesLoader.cs
- ExtensionMethods.cs
- SchemaLookupTable.cs
- ProbeRequestResponseAsyncResult.cs
- Util.cs
- DtcInterfaces.cs
- CompiledIdentityConstraint.cs
- DataRecordInternal.cs
- TextComposition.cs
- TextRangeEditTables.cs
- OdbcDataReader.cs
- SafeFileHandle.cs
- ColorAnimationBase.cs
- EventSourceCreationData.cs
- GridSplitter.cs
- StatusBar.cs
- ActivationServices.cs
- MeasureData.cs
- DocumentPageTextView.cs
- ConstructorNeedsTagAttribute.cs
- GeneratedContractType.cs
- AtlasWeb.Designer.cs
- StdRegProviderWrapper.cs
- FieldNameLookup.cs
- ListViewTableRow.cs
- DataGrid.cs
- DurationConverter.cs
- TimeoutException.cs
- Enum.cs
- MarkerProperties.cs
- IntegerValidator.cs
- Stopwatch.cs
- CharUnicodeInfo.cs
- XmlLanguageConverter.cs
- TemplateControlParser.cs
- DiscoveryMessageSequence11.cs
- AliasExpr.cs
- TreeIterator.cs
- EntityViewGenerationConstants.cs
- ListControlActionList.cs
- EventWaitHandleSecurity.cs
- IriParsingElement.cs
- SelectionWordBreaker.cs
- DispatcherFrame.cs
- SHA512.cs
- LicFileLicenseProvider.cs
- Normalization.cs
- SoapAttributes.cs
- GridViewDeletedEventArgs.cs
- webbrowsersite.cs
- SendContent.cs
- ObjectSpanRewriter.cs
- WebPermission.cs
- URLString.cs
- QueryableDataSourceEditData.cs
- ThreadNeutralSemaphore.cs
- XmlSortKeyAccumulator.cs
- SchemaElement.cs
- CodeCatchClauseCollection.cs
- HttpListenerRequest.cs
- LongValidatorAttribute.cs
- RotateTransform3D.cs
- SymmetricSecurityProtocol.cs
- ForceCopyBuildProvider.cs
- ProcessHostFactoryHelper.cs
- DesignerActionItemCollection.cs
- AssemblyCache.cs
- ListViewGroupConverter.cs
- PropertiesTab.cs
- DataSourceControl.cs
- IImplicitResourceProvider.cs
- QilFactory.cs
- SubMenuStyleCollection.cs
- DataProtection.cs
- CopyNamespacesAction.cs
- SendKeys.cs
- Pkcs7Signer.cs
- Rfc2898DeriveBytes.cs
- SqlParameterCollection.cs
- StackBuilderSink.cs
- DateTimeOffset.cs
- PathStreamGeometryContext.cs
- XmlWrappingWriter.cs
- WebServiceParameterData.cs
- Splitter.cs
- SystemFonts.cs
- FloaterBaseParaClient.cs
- PathParser.cs
- AsyncInvokeOperation.cs