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
- CqlGenerator.cs
- HttpBindingExtension.cs
- SortExpressionBuilder.cs
- PersistenceTypeAttribute.cs
- Exceptions.cs
- DbSetClause.cs
- PageEventArgs.cs
- EventToken.cs
- PeerContact.cs
- HttpServerVarsCollection.cs
- _NestedSingleAsyncResult.cs
- PixelFormats.cs
- OdbcConnection.cs
- CharAnimationBase.cs
- DataAdapter.cs
- TcpConnectionPoolSettingsElement.cs
- UnmanagedBitmapWrapper.cs
- MethodCallTranslator.cs
- HtmlContainerControl.cs
- Model3D.cs
- SizeAnimationUsingKeyFrames.cs
- PlatformCulture.cs
- AvTrace.cs
- ScriptingSectionGroup.cs
- _FixedSizeReader.cs
- WinCategoryAttribute.cs
- TextParaClient.cs
- HuffmanTree.cs
- DecimalAverageAggregationOperator.cs
- SystemPens.cs
- UnsafeNativeMethods.cs
- Rotation3D.cs
- DataGridViewColumnCollection.cs
- WindowsListViewItemCheckBox.cs
- GridViewCommandEventArgs.cs
- CodeAttachEventStatement.cs
- OpCellTreeNode.cs
- WindowsPen.cs
- MessageSmuggler.cs
- ValuePatternIdentifiers.cs
- SafeFileMappingHandle.cs
- SoapDocumentServiceAttribute.cs
- DesignerVerbToolStripMenuItem.cs
- ObjectDataSourceSelectingEventArgs.cs
- DrawListViewItemEventArgs.cs
- DataGridViewLinkCell.cs
- SqlParameterCollection.cs
- baseshape.cs
- MsdtcClusterUtils.cs
- VariableExpressionConverter.cs
- EdmSchemaError.cs
- ColorAnimation.cs
- SerializerProvider.cs
- FixedSOMTableRow.cs
- XmlDictionary.cs
- _OSSOCK.cs
- DataGridViewCellConverter.cs
- MailDefinition.cs
- sqlinternaltransaction.cs
- AttachInfo.cs
- DataGridViewElement.cs
- VideoDrawing.cs
- XmlComment.cs
- StylusPointCollection.cs
- ExpressionBuilder.cs
- EntityDataSourceDesigner.cs
- SecurityDescriptor.cs
- SQLMoneyStorage.cs
- BindingNavigatorDesigner.cs
- Primitive.cs
- RestHandler.cs
- LinkedList.cs
- AssemblyContextControlItem.cs
- StackBuilderSink.cs
- ExpressionsCollectionConverter.cs
- IEnumerable.cs
- XmlRawWriterWrapper.cs
- Int32Animation.cs
- MLangCodePageEncoding.cs
- ColumnCollection.cs
- TextEffect.cs
- PaginationProgressEventArgs.cs
- AdornerHitTestResult.cs
- DiagnosticTraceSource.cs
- ScriptControlDescriptor.cs
- JapaneseLunisolarCalendar.cs
- DispatcherOperation.cs
- MeshGeometry3D.cs
- ChangeConflicts.cs
- HtmlInputRadioButton.cs
- DataGridViewColumnConverter.cs
- XmlCharCheckingWriter.cs
- Control.cs
- TemplatedControlDesigner.cs
- DeleteBookmarkScope.cs
- iisPickupDirectory.cs
- EmptyStringExpandableObjectConverter.cs
- HttpResponseInternalWrapper.cs
- XmlObjectSerializerReadContextComplex.cs
- PathTooLongException.cs