Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / ErrorActivity.cs / 1305376 / ErrorActivity.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Activities.Presentation { using System; using System.Activities; using System.Activities.Presentation.View; using System.ComponentModel; using System.Runtime; using System.Xaml; using XamlDeferLoad = System.Windows.Markup.XamlDeferLoadAttribute; [Designer(typeof(ErrorActivity.ErrorActivityView))] internal class ErrorActivity : Activity { static readonly AttachableMemberIdentifier HasErrorActivitiesProperty = new AttachableMemberIdentifier(typeof(ErrorActivity), "HasErrorActivities"); internal const string ErrorNodesProperty = "ErrorNodes"; [Browsable(false)] [XamlDeferLoad(typeof(NodeListLoader), typeof(object))] public XamlNodeList ErrorNodes { get; set; } internal static bool GetHasErrorActivities(object target) { object result; if (AttachablePropertyServices.TryGetProperty(target, HasErrorActivitiesProperty, out result)) { return (bool)result; } return false; } internal static void SetHasErrorActivities(object target, bool value) { AttachablePropertyServices.SetProperty(target, HasErrorActivitiesProperty, value); } internal static void WriteNodeList(XamlWriter writer, XamlNodeList nodeList) { // We need to pass the ErrorNodes contents through as a NodeList, because XOW doesn't // currently support unknown types, even inside a DeferLoad block. // But if a NodeList is written to XOW as a Value, XOW will unpack, forcing us to re-buffer // the nodes in our deferring loader. So we wrap the NodeList value inside a dummy StartObject. writer.WriteStartObject(XamlLanguage.Object); writer.WriteStartMember(XamlLanguage.Initialization); writer.WriteValue(nodeList); writer.WriteEndMember(); writer.WriteEndObject(); } internal class NodeListLoader : XamlDeferringLoader { public override object Load(XamlReader xamlReader, IServiceProvider serviceProvider) { // Expects a nodestream produced by WriteNodesList xamlReader.Read(); xamlReader.Read(); xamlReader.Read(); Fx.Assert(xamlReader.NodeType == XamlNodeType.Value, "Expected Value node"); return (XamlNodeList)xamlReader.Value; } public override XamlReader Save(object value, IServiceProvider serviceProvider) { return ((XamlNodeList)value).GetReader(); } } internal class ErrorActivityView : WorkflowViewElement { public ErrorActivityView() { WorkflowViewService.ShowErrorInViewElement(this, SR.ActivityLoadError, null); } } } [Designer(typeof(ErrorActivity.ErrorActivityView))] internal class ErrorActivity: Activity { [Browsable(false)] [XamlDeferLoad(typeof(ErrorActivity.NodeListLoader), typeof(object))] public XamlNodeList ErrorNodes { get; set; } } } // 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
- IndexedGlyphRun.cs
- XmlNodeReader.cs
- MetadataArtifactLoader.cs
- OdbcEnvironment.cs
- FunctionQuery.cs
- shaperfactoryquerycacheentry.cs
- sortedlist.cs
- SafeNativeMethods.cs
- BuildProvidersCompiler.cs
- WebBrowserUriTypeConverter.cs
- WebPartPersonalization.cs
- BaseConfigurationRecord.cs
- ActivityBindForm.cs
- AuthorizationRule.cs
- ItemsControl.cs
- BinaryConverter.cs
- MetadataArtifactLoaderResource.cs
- OdbcFactory.cs
- CssTextWriter.cs
- ReflectionHelper.cs
- DocumentDesigner.cs
- CompilerCollection.cs
- AppModelKnownContentFactory.cs
- ServiceOperation.cs
- BridgeDataRecord.cs
- ScaleTransform.cs
- ThaiBuddhistCalendar.cs
- Drawing.cs
- RepeaterCommandEventArgs.cs
- RegistrationServices.cs
- BlurBitmapEffect.cs
- ApplicationFileCodeDomTreeGenerator.cs
- PersistNameAttribute.cs
- SmtpCommands.cs
- AuthorizationRuleCollection.cs
- MultipartContentParser.cs
- FixedFlowMap.cs
- SafeRightsManagementSessionHandle.cs
- PictureBox.cs
- ValidatedControlConverter.cs
- Context.cs
- EditorServiceContext.cs
- ClientBuildManager.cs
- MtomMessageEncodingElement.cs
- IsolatedStorage.cs
- ConvertEvent.cs
- FontDialog.cs
- TransportElement.cs
- CompressEmulationStream.cs
- PageSettings.cs
- FormViewInsertEventArgs.cs
- ConstantProjectedSlot.cs
- ReadOnlyState.cs
- _SecureChannel.cs
- MethodMessage.cs
- WrappingXamlSchemaContext.cs
- AssemblyCollection.cs
- rsa.cs
- CodeSnippetStatement.cs
- CollectionsUtil.cs
- DesignerOptionService.cs
- ParallelDesigner.cs
- ClientOptions.cs
- ControlTemplate.cs
- XPathAxisIterator.cs
- RectKeyFrameCollection.cs
- RegexWorker.cs
- WriteFileContext.cs
- CodeDomSerializerBase.cs
- InvokePattern.cs
- RemotingAttributes.cs
- SecurityPolicySection.cs
- VectorCollectionConverter.cs
- LookupNode.cs
- SyntaxCheck.cs
- IsolationInterop.cs
- HtmlControl.cs
- PublishLicense.cs
- FigureHelper.cs
- XamlFilter.cs
- NameTable.cs
- ScrollData.cs
- TextSelection.cs
- DocumentOutline.cs
- LocatorPartList.cs
- RemotingSurrogateSelector.cs
- AsyncCompletedEventArgs.cs
- PreservationFileWriter.cs
- SimpleHandlerFactory.cs
- AppliedDeviceFiltersEditor.cs
- Canvas.cs
- BrowserCapabilitiesCompiler.cs
- Container.cs
- XmlAutoDetectWriter.cs
- FontFamilyIdentifier.cs
- MsmqDecodeHelper.cs
- StrokeNodeOperations2.cs
- BitmapEffectInput.cs
- DateTimeOffsetConverter.cs
- PropertyGroupDescription.cs