Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Design / Util / HeaderPanel.cs / 1305376 / HeaderPanel.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design.MobileControls.Util { using System; using System.Diagnostics; using System.Drawing; using System.Windows.Forms; [ System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode) ] [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] internal class HeaderPanel : Panel { private int _recursionCount = 0; internal void RequestNewHeight(HeaderLabel header, int height) { int offset = height - header.Height; try { // This is a workaround for a RTB issue that causes their // algorithm to ---- up if OnContentsResize recurses. (Now // that HeaderLabel does not resize the text untill after // autoscaling, we do not seem to hit this, but just in case). // // On the first call the RTB guesses its best dimensions // for the given text. We correct the Width which may cause // a second recursive call to adjust the height. if(_recursionCount < 2) { _recursionCount++; header.Height = height; // foreach(Control child in Controls) { if(child.Top > header.Top) { child.Top += offset; } } for( Control controlIterator = this; controlIterator != null; controlIterator = controlIterator.Parent ) { controlIterator.Height += offset; } } else { Debug.Assert(offset == 0, "On 3rd recursive call offset is not yet stabalized." ); } } finally { _recursionCount = 0; } } protected override void OnSizeChanged(EventArgs e) { foreach(Control child in Controls) { if(child is HeaderLabel) { child.Width = Width; } } base.OnSizeChanged(e); } } } // 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
- Debug.cs
- SelectionUIHandler.cs
- ContainsRowNumberChecker.cs
- OperatingSystemVersionCheck.cs
- DocumentStatusResources.cs
- RangeValuePattern.cs
- TextProperties.cs
- SynchronizationContext.cs
- ResourceKey.cs
- EntityClassGenerator.cs
- TemplateApplicationHelper.cs
- JoinGraph.cs
- WebPartDisplayModeCancelEventArgs.cs
- TreeNodeCollection.cs
- DBConnection.cs
- ForEachAction.cs
- ExceptionRoutedEventArgs.cs
- HtmlSelect.cs
- WebHttpElement.cs
- XComponentModel.cs
- CodeDomSerializerException.cs
- TextTreePropertyUndoUnit.cs
- SqlInfoMessageEvent.cs
- RtfToXamlReader.cs
- DocumentOrderQuery.cs
- PropertyGridCommands.cs
- ConfigurationStrings.cs
- WebDescriptionAttribute.cs
- MaterializeFromAtom.cs
- ListViewHitTestInfo.cs
- WebEventTraceProvider.cs
- Ray3DHitTestResult.cs
- ImageBrush.cs
- BaseComponentEditor.cs
- CheckBoxBaseAdapter.cs
- AssemblyName.cs
- TextTreeInsertElementUndoUnit.cs
- XmlSchemaDocumentation.cs
- ConfigurationPermission.cs
- OleStrCAMarshaler.cs
- NativeCppClassAttribute.cs
- SamlAuthenticationClaimResource.cs
- WinFormsSpinner.cs
- JsonObjectDataContract.cs
- Color.cs
- SetStoryboardSpeedRatio.cs
- ImageField.cs
- RuntimeCompatibilityAttribute.cs
- CombinedGeometry.cs
- IArgumentProvider.cs
- SystemKeyConverter.cs
- NameNode.cs
- Property.cs
- PropertyPathConverter.cs
- XmlLanguage.cs
- TakeOrSkipWhileQueryOperator.cs
- ClientRolePrincipal.cs
- AnimatedTypeHelpers.cs
- Geometry3D.cs
- TextServicesDisplayAttribute.cs
- ConfigurationSection.cs
- XamlTypeMapperSchemaContext.cs
- CompilerGlobalScopeAttribute.cs
- SqlCacheDependencyDatabase.cs
- MarkupCompiler.cs
- PenLineJoinValidation.cs
- Emitter.cs
- AddInPipelineAttributes.cs
- Converter.cs
- DesignerSerializerAttribute.cs
- DocumentViewerConstants.cs
- SelectionPatternIdentifiers.cs
- Math.cs
- DbConnectionOptions.cs
- CmsInterop.cs
- Popup.cs
- BuildProvider.cs
- SqlConnectionFactory.cs
- DragCompletedEventArgs.cs
- TypeDescriptionProviderAttribute.cs
- ItemPager.cs
- GlyphingCache.cs
- Inflater.cs
- hresults.cs
- Base64Encoding.cs
- SQLBinaryStorage.cs
- MouseGestureValueSerializer.cs
- SqlDataSource.cs
- TraceSource.cs
- ConfigXmlCDataSection.cs
- SystemIPInterfaceProperties.cs
- InternalDuplexChannelFactory.cs
- RuleCache.cs
- codemethodreferenceexpression.cs
- ScriptingWebServicesSectionGroup.cs
- WebPartsPersonalization.cs
- AttachedPropertyBrowsableAttribute.cs
- Debugger.cs
- BitmapMetadataEnumerator.cs
- ValidationHelpers.cs