Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Markup / Baml2006 / WpfKnownTypeInvoker.cs / 1305600 / WpfKnownTypeInvoker.cs
using System; using System.Collections.Generic; using System.Xaml; using System.Xaml.Schema; namespace System.Windows.Baml2006 { class WpfKnownTypeInvoker : XamlTypeInvoker { WpfKnownType _type; public WpfKnownTypeInvoker(WpfKnownType type) : base(type) { _type = type; } public override object CreateInstance(object[] arguments) { if ((arguments == null || arguments.Length == 0) && _type.DefaultConstructor != null) { return _type.DefaultConstructor.Invoke(); } else if (_type.IsMarkupExtension) { Baml6ConstructorInfo ctorInfo; if(!_type.Constructors.TryGetValue(arguments.Length, out ctorInfo)) { throw new InvalidOperationException(SR.Get(SRID.PositionalArgumentsWrongLength)); } return ctorInfo.Constructor(arguments); } else { return base.CreateInstance(arguments); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Collections.Generic; using System.Xaml; using System.Xaml.Schema; namespace System.Windows.Baml2006 { class WpfKnownTypeInvoker : XamlTypeInvoker { WpfKnownType _type; public WpfKnownTypeInvoker(WpfKnownType type) : base(type) { _type = type; } public override object CreateInstance(object[] arguments) { if ((arguments == null || arguments.Length == 0) && _type.DefaultConstructor != null) { return _type.DefaultConstructor.Invoke(); } else if (_type.IsMarkupExtension) { Baml6ConstructorInfo ctorInfo; if(!_type.Constructors.TryGetValue(arguments.Length, out ctorInfo)) { throw new InvalidOperationException(SR.Get(SRID.PositionalArgumentsWrongLength)); } return ctorInfo.Constructor(arguments); } else { return base.CreateInstance(arguments); } } } } // 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
- XmlAnyElementAttribute.cs
- serverconfig.cs
- Process.cs
- Baml2006ReaderSettings.cs
- WpfKnownMember.cs
- InkPresenter.cs
- ConfigurationSection.cs
- FontFamily.cs
- XPathNodeIterator.cs
- Encoder.cs
- Propagator.Evaluator.cs
- GridViewRowEventArgs.cs
- CultureMapper.cs
- OdbcDataAdapter.cs
- BeginGetFileNameFromUserRequest.cs
- UnaryNode.cs
- PointLight.cs
- RbTree.cs
- PropertyItemInternal.cs
- LinqDataSource.cs
- XamlSerializationHelper.cs
- XamlToRtfParser.cs
- WebHostScriptMappingsInstallComponent.cs
- DependencyObjectPropertyDescriptor.cs
- MultiBinding.cs
- TriggerActionCollection.cs
- TextTreeUndoUnit.cs
- NamedPipeTransportElement.cs
- TableAutomationPeer.cs
- RepeatButtonAutomationPeer.cs
- XDeferredAxisSource.cs
- CapabilitiesState.cs
- PermissionSetTriple.cs
- PropertySegmentSerializer.cs
- CngKey.cs
- HostedTransportConfigurationBase.cs
- AspNetCompatibilityRequirementsAttribute.cs
- PathFigure.cs
- KeyboardNavigation.cs
- WindowsMenu.cs
- MatrixTransform3D.cs
- _NetworkingPerfCounters.cs
- DataRowView.cs
- ComponentRenameEvent.cs
- Token.cs
- ReadOnlyKeyedCollection.cs
- PropertyDescriptor.cs
- RouteData.cs
- StringPropertyBuilder.cs
- ParallelTimeline.cs
- DisplayMemberTemplateSelector.cs
- Int32Converter.cs
- PersianCalendar.cs
- NoClickablePointException.cs
- TreeNodeBindingDepthConverter.cs
- FaultPropagationRecord.cs
- CharStorage.cs
- TransformGroup.cs
- WizardPanelChangingEventArgs.cs
- BehaviorEditorPart.cs
- HyperlinkAutomationPeer.cs
- MissingMemberException.cs
- MetadataProperty.cs
- UndoUnit.cs
- RTLAwareMessageBox.cs
- Type.cs
- Int16Converter.cs
- OleCmdHelper.cs
- Wildcard.cs
- DetailsViewRow.cs
- ExecutionContext.cs
- ClientRequest.cs
- RelationshipEnd.cs
- PeerTransportBindingElement.cs
- GeometryConverter.cs
- HostedController.cs
- DrawingBrush.cs
- wmiprovider.cs
- TdsParser.cs
- TdsParameterSetter.cs
- RegexCapture.cs
- AmbientValueAttribute.cs
- WindowsListViewScroll.cs
- XmlAttributeCache.cs
- StreamResourceInfo.cs
- DesignerActionUIStateChangeEventArgs.cs
- EventProviderBase.cs
- EqualityComparer.cs
- ImpersonationContext.cs
- WebPartEditorCancelVerb.cs
- COM2AboutBoxPropertyDescriptor.cs
- MetadataSerializer.cs
- TransactedBatchingElement.cs
- TreeChangeInfo.cs
- ControlTemplate.cs
- XPathNavigatorKeyComparer.cs
- LabelLiteral.cs
- CancellationHandlerDesigner.cs
- ColorConvertedBitmapExtension.cs
- DataListCommandEventArgs.cs