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
- SQLInt32Storage.cs
- TreeView.cs
- HttpCacheVary.cs
- RectKeyFrameCollection.cs
- IsolatedStorageFilePermission.cs
- DrawingContext.cs
- WsdlWriter.cs
- WebControl.cs
- FlowDocumentPage.cs
- HtmlTableRow.cs
- SiteMapSection.cs
- XmlLanguage.cs
- CompilerCollection.cs
- TextBoxAutoCompleteSourceConverter.cs
- SortableBindingList.cs
- ThreadPool.cs
- RotateTransform3D.cs
- DurableEnlistmentState.cs
- XamlSerializer.cs
- ToolStripSplitStackLayout.cs
- OSFeature.cs
- ModelMemberCollection.cs
- BufferBuilder.cs
- ArrayTypeMismatchException.cs
- DoubleAnimation.cs
- Rotation3DKeyFrameCollection.cs
- XmlAtomicValue.cs
- MetadataException.cs
- PerfCounterSection.cs
- StdRegProviderWrapper.cs
- WinEventTracker.cs
- CollectionConverter.cs
- DataGridViewSortCompareEventArgs.cs
- RunInstallerAttribute.cs
- GetReadStreamResult.cs
- BounceEase.cs
- OperationCanceledException.cs
- DataGridViewRowCollection.cs
- DataGridViewComboBoxColumn.cs
- DataIdProcessor.cs
- ByteConverter.cs
- DateTimeOffsetStorage.cs
- ColorEditor.cs
- SettingsPropertyCollection.cs
- PointCollection.cs
- SinglePhaseEnlistment.cs
- PseudoWebRequest.cs
- ProxyWebPartManager.cs
- RtfToken.cs
- DataGridViewColumnStateChangedEventArgs.cs
- ListSourceHelper.cs
- Mutex.cs
- WebPartZoneBase.cs
- BitmapEffectGroup.cs
- FieldNameLookup.cs
- RepeatButton.cs
- GenericTextProperties.cs
- OrderByBuilder.cs
- EnterpriseServicesHelper.cs
- SqlDependencyListener.cs
- CustomAttribute.cs
- RuleSettings.cs
- NetworkInterface.cs
- BufferAllocator.cs
- WorkflowStateRollbackService.cs
- ModelItemExtensions.cs
- ExtensibleClassFactory.cs
- DataGridLength.cs
- AccessDataSourceView.cs
- Char.cs
- RootBuilder.cs
- PasswordTextNavigator.cs
- MetadataFile.cs
- XpsPackagingPolicy.cs
- NetMsmqSecurityMode.cs
- SafeHandle.cs
- ImmutableObjectAttribute.cs
- ListItemCollection.cs
- OperationFormatter.cs
- KeyboardDevice.cs
- GetRecipientRequest.cs
- XslException.cs
- HttpContextBase.cs
- SqlDataSourceStatusEventArgs.cs
- Select.cs
- ExpressionBuilder.cs
- PropertyItem.cs
- SmtpNetworkElement.cs
- XmlElementCollection.cs
- DodSequenceMerge.cs
- ReadWriteObjectLock.cs
- Table.cs
- StreamGeometryContext.cs
- FileNotFoundException.cs
- TextServicesDisplayAttribute.cs
- LinkedResourceCollection.cs
- ImageBrush.cs
- RepeaterItem.cs
- ChildrenQuery.cs
- IfAction.cs