Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / Markup / XamlWriter.cs / 1 / XamlWriter.cs
//---------------------------------------------------------------------------- // // File: XamlWriter.cs // // Description: // base Parser class that parses XML markup into an Avalon Element Tree // // // History: // 6/06/01: rogerg Created as Parser.cs // 5/29/03: [....] Ported to wcp as Parser.cs // 8/04/05: [....] Split Parser into XamlReader and XamlWriter // // Copyright (C) 2003 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Xml; using System.IO; using System.IO.Packaging; using System.Windows; using System.Collections; using System.Diagnostics; using System.Reflection; using System.Windows.Threading; using MS.Utility; using System.Security; using System.Security.Permissions; using System.Security.Policy; using System.Text; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.Windows.Markup.Primitives; using MS.Internal.IO.Packaging; using MS.Internal.PresentationFramework; namespace System.Windows.Markup { ////// Parsing class used to create an Windows Presentation Platform Tree /// public static class XamlWriter { #region Public Methods ////// Save gets the xml respresentation /// for the given object instance /// /// /// Object instance /// ////// XAML string representing object instance /// ////// We only allow Serialization in partial trust. Although we would throw an exception later anyways, /// we throw one here so we know where to expect the exception. ( public static string Save(object obj) { // Must be in full trust SecurityHelper.DemandUnmanagedCode(); // Validate input arguments if (obj == null) { throw new ArgumentNullException("obj"); } // Create TextWriter StringBuilder sb = new StringBuilder(); TextWriter writer = new StringWriter(sb, XamlSerializerUtil.EnglishUSCulture); try { Save(obj, writer); } finally { // Close writer writer.Close(); } return sb.ToString(); } /// /// Save writes the xml respresentation /// for the given object instance using the given writer /// /// /// Object instance /// /// /// Text Writer /// ////// We only allow Serialization in partial trust. Although we would throw an exception later anyways, /// we throw one here so we know where to expect the exception. ( public static void Save(object obj, TextWriter writer) { // Must be in full trust SecurityHelper.DemandUnmanagedCode(); // Validate input arguments if (obj == null) { throw new ArgumentNullException("obj"); } if (writer == null) { throw new ArgumentNullException("writer"); } // Create XmlTextWriter XmlTextWriter xmlWriter = new XmlTextWriter(writer); MarkupWriter.SaveAsXml(xmlWriter, obj); } /// /// Save writes the xml respresentation /// for the given object instance to the given stream /// /// /// Object instance /// /// /// Stream /// ////// We only allow Serialization in partial trust. Although we would throw an exception later anyways, /// we throw one here so we know where to expect the exception. ( public static void Save(object obj, Stream stream) { // Must be in full trust SecurityHelper.DemandUnmanagedCode(); // Validate input arguments if (obj == null) { throw new ArgumentNullException("obj"); } if (stream == null) { throw new ArgumentNullException("stream"); } // Create XmlTextWriter XmlTextWriter xmlWriter = new XmlTextWriter(stream, null); MarkupWriter.SaveAsXml(xmlWriter, obj); } /// /// Save writes the xml respresentation /// for the given object instance using the given /// writer. In addition it also allows the designer /// to participate in this conversion. /// /// /// Object instance /// /// /// XmlWriter /// ////// We only allow Serialization in partial trust. Although we would throw an exception later anyways, /// we throw one here so we know where to expect the exception. ( public static void Save(object obj, XmlWriter xmlWriter) { // Must be in full trust SecurityHelper.DemandUnmanagedCode(); // Validate input arguments if (obj == null) { throw new ArgumentNullException("obj"); } if (xmlWriter == null) { throw new ArgumentNullException("xmlWriter"); } try { MarkupWriter.SaveAsXml(xmlWriter, obj); } finally { xmlWriter.Flush(); } } /// /// Save writes the xml respresentation /// for the given object instance using the /// given XmlTextWriter embedded in the manager. /// /// /// Object instance /// /// /// Serialization Manager /// ////// We only allow Serialization in partial trust. Although we would throw an exception later anyways, /// we throw one here so we know where to expect the exception. ( public static void Save(object obj, XamlDesignerSerializationManager manager) { // Must be in full trust SecurityHelper.DemandUnmanagedCode(); // Validate input arguments if (obj == null) { throw new ArgumentNullException("obj"); } if (manager == null) { throw new ArgumentNullException("manager"); } MarkupWriter.SaveAsXml(manager.XmlWriter, obj, manager); } #endregion Public Methods } } // 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
- SessionParameter.cs
- BasicKeyConstraint.cs
- StateDesigner.TransitionInfo.cs
- CodeCompiler.cs
- Camera.cs
- SqlUtil.cs
- CustomExpression.cs
- DelayedRegex.cs
- WebPartZoneDesigner.cs
- TextBreakpoint.cs
- InkCanvas.cs
- LineServices.cs
- ConstructorExpr.cs
- ApplicationInfo.cs
- MemberPath.cs
- ExpressionBindings.cs
- FtpWebRequest.cs
- ExtenderControl.cs
- DropTarget.cs
- PasswordRecoveryDesigner.cs
- Crc32.cs
- StandardBindingImporter.cs
- AutoGeneratedField.cs
- LogManagementAsyncResult.cs
- ArrayList.cs
- ProcessModelInfo.cs
- WorkflowInstanceQuery.cs
- RegexWorker.cs
- DataFieldConverter.cs
- ConfigurationValidatorBase.cs
- WinFormsComponentEditor.cs
- WindowsListViewScroll.cs
- TraceUtility.cs
- DirectoryNotFoundException.cs
- SHA1CryptoServiceProvider.cs
- DateTimePicker.cs
- BackStopAuthenticationModule.cs
- CacheEntry.cs
- TimestampInformation.cs
- DetailsView.cs
- JumpTask.cs
- SQlBooleanStorage.cs
- OrderByBuilder.cs
- HostExecutionContextManager.cs
- Operator.cs
- ClientTarget.cs
- CaseInsensitiveHashCodeProvider.cs
- ParenthesizePropertyNameAttribute.cs
- Context.cs
- TableItemStyle.cs
- DiscoveryRequestHandler.cs
- RemoteWebConfigurationHostStream.cs
- ImageSourceConverter.cs
- Condition.cs
- DataSourceProvider.cs
- TableStyle.cs
- Substitution.cs
- Wizard.cs
- TriState.cs
- SessionStateModule.cs
- Wizard.cs
- TypedTableBase.cs
- XmlMapping.cs
- GenericsInstances.cs
- CLSCompliantAttribute.cs
- EntityProviderFactory.cs
- MarkupCompiler.cs
- DataTableNewRowEvent.cs
- ToolStripDropDownItem.cs
- QuadraticBezierSegment.cs
- SubMenuStyleCollection.cs
- SrgsDocumentParser.cs
- HelpKeywordAttribute.cs
- EntityDataSourceWrapperCollection.cs
- HopperCache.cs
- BCLDebug.cs
- ProjectionCamera.cs
- LineGeometry.cs
- FixedFindEngine.cs
- MultiBinding.cs
- CqlLexerHelpers.cs
- QilTargetType.cs
- SecurityRuntime.cs
- ApplicationProxyInternal.cs
- MetaColumn.cs
- _WebProxyDataBuilder.cs
- SHA384CryptoServiceProvider.cs
- CopyCodeAction.cs
- XmlObjectSerializerWriteContext.cs
- GPPOINT.cs
- TextPointerBase.cs
- WebPartConnectionsDisconnectVerb.cs
- EmptyReadOnlyDictionaryInternal.cs
- FileDialog_Vista.cs
- RepeatInfo.cs
- ProviderCommandInfoUtils.cs
- FixedFindEngine.cs
- SystemException.cs
- CompleteWizardStep.cs
- PlainXmlDeserializer.cs