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
- XmlMapping.cs
- IgnoreFileBuildProvider.cs
- SamlAudienceRestrictionCondition.cs
- MeasurementDCInfo.cs
- PageThemeParser.cs
- GroupDescription.cs
- OdbcRowUpdatingEvent.cs
- FileInfo.cs
- XPathAncestorIterator.cs
- GcSettings.cs
- FacetEnabledSchemaElement.cs
- WebPartDisplayModeCancelEventArgs.cs
- Normalizer.cs
- CustomBindingCollectionElement.cs
- QueryOpcode.cs
- NoClickablePointException.cs
- XXXInfos.cs
- ListItemCollection.cs
- HandledEventArgs.cs
- _HTTPDateParse.cs
- ParseElement.cs
- GenerateHelper.cs
- CommandLibraryHelper.cs
- TextSelectionProcessor.cs
- XsltException.cs
- TreeNodeStyle.cs
- _DigestClient.cs
- XmlSchemaSimpleTypeRestriction.cs
- PickBranchDesigner.xaml.cs
- DataServiceRequest.cs
- SerializableAttribute.cs
- XamlParser.cs
- RepeatButtonAutomationPeer.cs
- DataStreams.cs
- HttpGetProtocolImporter.cs
- EventMappingSettingsCollection.cs
- _HelperAsyncResults.cs
- SrgsText.cs
- WebPartDesigner.cs
- _ShellExpression.cs
- DBDataPermissionAttribute.cs
- AxisAngleRotation3D.cs
- WebHttpBindingCollectionElement.cs
- AttributeQuery.cs
- LostFocusEventManager.cs
- DBCommandBuilder.cs
- StringKeyFrameCollection.cs
- SqlFlattener.cs
- HorizontalAlignConverter.cs
- BuilderPropertyEntry.cs
- ToolCreatedEventArgs.cs
- wgx_commands.cs
- DiffuseMaterial.cs
- DataGridViewCellPaintingEventArgs.cs
- XmlSchemaGroupRef.cs
- BindingExpressionBase.cs
- ACE.cs
- PasswordRecovery.cs
- XmlReader.cs
- LinkButton.cs
- AccessDataSource.cs
- ColumnReorderedEventArgs.cs
- MatchingStyle.cs
- NavigationCommands.cs
- HotSpot.cs
- BufferCache.cs
- StringValidator.cs
- SerialReceived.cs
- InputDevice.cs
- UnitySerializationHolder.cs
- DelegatingHeader.cs
- TypeTypeConverter.cs
- ForeignKeyConstraint.cs
- InvalidWMPVersionException.cs
- BitVec.cs
- MetaTableHelper.cs
- NodeFunctions.cs
- CodeVariableReferenceExpression.cs
- TraceSection.cs
- DataTableCollection.cs
- TitleStyle.cs
- RoleManagerSection.cs
- ImageSource.cs
- AbandonedMutexException.cs
- BaseCodePageEncoding.cs
- AsmxEndpointPickerExtension.cs
- DuplicateWaitObjectException.cs
- ReaderContextStackData.cs
- InputGestureCollection.cs
- ParseChildrenAsPropertiesAttribute.cs
- TypeLibConverter.cs
- PackagePart.cs
- AppSettingsReader.cs
- ProxyElement.cs
- TypeBuilder.cs
- TableSectionStyle.cs
- MsmqOutputSessionChannel.cs
- SingleAnimationBase.cs
- DnsEndPoint.cs
- AppSettingsSection.cs