Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Design / Adapters / MSHTMLHostUtil.cs / 1305376 / MSHTMLHostUtil.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Diagnostics; using System.Drawing; using System.Web.UI.Design.MobileControls.Util; namespace System.Web.UI.Design.MobileControls.Adapters { [ 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 static class MSHTMLHostUtil { private const int CONTROL_WIDTH = 64; private const int CONTROL_HEIGHT = 4096; private static MSHTMLHost _tridentControl; private static NativeMethods.IHTMLElement _htmlBody; private static NativeMethods.IHTMLElement _htmlDivOuter; private static NativeMethods.IHTMLElement _htmlDivInner; private static void CreateControl() { if (null != _tridentControl && null != _htmlBody) { return; } _tridentControl = new MSHTMLHost(); _tridentControl.Size = new Size(CONTROL_WIDTH, CONTROL_HEIGHT); _tridentControl.CreateTrident(); _tridentControl.ActivateTrident(); NativeMethods.IHTMLDocument2 htmlDoc2 = _tridentControl.GetDocument(); _htmlBody = htmlDoc2.GetBody(); } internal static void ApplyStyle(String enterStyle, String exitStyle, String cssStyle) { MSHTMLHostUtil.CreateControl(); String bodyInnerHTML = "" + enterStyle + "" + exitStyle + ""; // MessageBox.Show("Body HTML for empty content: " + bodyInnerHTML); _htmlBody.SetInnerHTML(bodyInnerHTML); NativeMethods.IHTMLDocument3 htmlDoc3 = (NativeMethods.IHTMLDocument3) _tridentControl.GetDocument(); Debug.Assert(null != htmlDoc3); _htmlDivInner = htmlDoc3.GetElementById("__divInner"); _htmlDivOuter = htmlDoc3.GetElementById("__divOuter"); Debug.Assert(null != _htmlDivOuter && null != _htmlDivInner); } #if UNUSED_CODE internal static int GetTextWidth(String text) { Debug.Assert(null != _htmlDivOuter && null != _htmlDivInner); _htmlDivInner.SetInnerText(text); NativeMethods.IHTMLElement2 htmlElement2 = (NativeMethods.IHTMLElement2) _htmlDivOuter; Debug.Assert(null != htmlElement2); return htmlElement2.GetClientWidth(); } #endif internal static int GetHtmlFragmentWidth(String htmlFragment) { Debug.Assert(null != _htmlDivOuter && null != _htmlDivInner); _htmlDivInner.SetInnerHTML(htmlFragment); NativeMethods.IHTMLElement2 htmlElement2 = (NativeMethods.IHTMLElement2) _htmlDivOuter; Debug.Assert(null != htmlElement2); return htmlElement2.GetClientWidth(); } internal static int GetHtmlFragmentHeight(String htmlFragment) { Debug.Assert(null != _htmlDivOuter && null != _htmlDivInner); _htmlDivInner.SetInnerHTML(htmlFragment); NativeMethods.IHTMLElement2 htmlElement2 = (NativeMethods.IHTMLElement2) _htmlDivOuter; Debug.Assert(null != htmlElement2); return htmlElement2.GetClientHeight(); } } } // 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
- DeadCharTextComposition.cs
- DesignerRegionCollection.cs
- MonthCalendar.cs
- SecurityProtocolCorrelationState.cs
- IISUnsafeMethods.cs
- InstanceDataCollection.cs
- DbProviderFactories.cs
- MessageDecoder.cs
- CommonGetThemePartSize.cs
- UIElementAutomationPeer.cs
- GeneralTransform3DCollection.cs
- CodeEntryPointMethod.cs
- DragCompletedEventArgs.cs
- OperationAbortedException.cs
- RuleSettingsCollection.cs
- StoryFragments.cs
- Publisher.cs
- SettingsAttributes.cs
- CommandPlan.cs
- SpeechEvent.cs
- MD5.cs
- WebBrowserHelper.cs
- EntryWrittenEventArgs.cs
- DbConnectionFactory.cs
- _Events.cs
- PassportPrincipal.cs
- Win32.cs
- XmlEnumAttribute.cs
- MenuItemBinding.cs
- DataControlCommands.cs
- CodeIdentifiers.cs
- SqlVersion.cs
- PropertyToken.cs
- MonitorWrapper.cs
- ActivationArguments.cs
- Psha1DerivedKeyGenerator.cs
- TimeoutHelper.cs
- ObjectNotFoundException.cs
- TextDecoration.cs
- DiffuseMaterial.cs
- ConsumerConnectionPoint.cs
- Message.cs
- ObjectComplexPropertyMapping.cs
- Input.cs
- IPAddressCollection.cs
- AtomServiceDocumentSerializer.cs
- UidManager.cs
- AffineTransform3D.cs
- ContainerParagraph.cs
- UrlMappingsModule.cs
- EntityDesignerBuildProvider.cs
- DependencyPropertyKey.cs
- _AutoWebProxyScriptHelper.cs
- DataColumnPropertyDescriptor.cs
- TabControlEvent.cs
- ProtocolElementCollection.cs
- RemoteWebConfigurationHostServer.cs
- ObjectDataSourceDisposingEventArgs.cs
- SQLBoolean.cs
- CancellationToken.cs
- HwndMouseInputProvider.cs
- SafeLocalMemHandle.cs
- XmlEntityReference.cs
- LayoutDump.cs
- AnnouncementEndpoint.cs
- RectangleGeometry.cs
- HttpTransportManager.cs
- PKCS1MaskGenerationMethod.cs
- HttpClientCredentialType.cs
- JsonEncodingStreamWrapper.cs
- unitconverter.cs
- TopClause.cs
- ReliabilityContractAttribute.cs
- CryptoProvider.cs
- ConnectionPointCookie.cs
- ExpressionReplacer.cs
- ToolStripContentPanel.cs
- RequestQueue.cs
- UrlMapping.cs
- CreateParams.cs
- WorkflowDesigner.cs
- ProvidePropertyAttribute.cs
- EventMap.cs
- PointLightBase.cs
- SafeSecurityHelper.cs
- PresentationAppDomainManager.cs
- DebugView.cs
- DecimalKeyFrameCollection.cs
- VisualBrush.cs
- ContentElement.cs
- InteropExecutor.cs
- Matrix.cs
- InputLanguageProfileNotifySink.cs
- PerformanceCounterLib.cs
- LogReserveAndAppendState.cs
- UInt16Storage.cs
- XmlSchemaAttributeGroupRef.cs
- oledbmetadatacollectionnames.cs
- PatternMatcher.cs
- AnnotationService.cs