Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Common / AuthoringOM / Design / WinOEToolBoxItem.cs / 1305376 / WinOEToolBoxItem.cs
namespace System.Workflow.ComponentModel.Design { using System; using System.Collections; using System.Drawing; using System.Drawing.Design; using System.ComponentModel; using System.Runtime.Serialization; using System.ComponentModel.Design; using System.Security.Permissions; using System.Reflection; [Serializable] [PermissionSet(SecurityAction.InheritanceDemand, Name = "FullTrust")] [PermissionSet(SecurityAction.LinkDemand, Name = "FullTrust")] public class ActivityToolboxItem: ToolboxItem { private const String ActivitySuffix = "Activity"; public ActivityToolboxItem() { } public ActivityToolboxItem(Type type):base(type) { // if (type != null) { if (type.Name != null) { string name = type.Name; if ((type.Assembly == Assembly.GetExecutingAssembly() || type.Assembly != null && type.Assembly.FullName != null && type.Assembly.FullName.Equals(AssemblyRef.ActivitiesAssemblyRef, StringComparison.OrdinalIgnoreCase)) && type.Name.EndsWith(ActivitySuffix, StringComparison.Ordinal) && !type.Name.Equals(ActivitySuffix, StringComparison.Ordinal)) { name = type.Name.Substring(0, type.Name.Length - ActivitySuffix.Length); } base.DisplayName = name; } base.Description = ActivityDesigner.GetActivityDescription(type); } } protected ActivityToolboxItem(SerializationInfo info, StreamingContext context) { Deserialize(info, context); } public virtual IComponent[] CreateComponentsWithUI(IDesignerHost host) { return CreateComponentsCore(host); } // protected override IComponent[] CreateComponentsCore(IDesignerHost host) { Type typeOfComponent = GetType(host, AssemblyName, TypeName, true); if (typeOfComponent == null && host != null) typeOfComponent = host.GetType(TypeName); if (typeOfComponent == null) { ITypeProviderCreator tpc = null; if (host != null) tpc = (ITypeProviderCreator)host.GetService(typeof(ITypeProviderCreator)); if (tpc != null) { System.Reflection.Assembly assembly = tpc.GetTransientAssembly(this.AssemblyName); if (assembly != null) typeOfComponent = assembly.GetType(this.TypeName); } if (typeOfComponent == null) typeOfComponent = GetType(host, AssemblyName, TypeName, true); } ArrayList comps = new ArrayList(); if (typeOfComponent != null) { if (typeof(IComponent).IsAssignableFrom(typeOfComponent)) comps.Add(TypeDescriptor.CreateInstance(null, typeOfComponent, null, null)); } IComponent[] temp = new IComponent[comps.Count]; comps.CopyTo(temp, 0); return temp; } public static Image GetToolboxImage(Type activityType) { if (activityType == null) throw new ArgumentNullException("activityType"); Image toolBoxImage = null; if (activityType != null) { object[] attribs = activityType.GetCustomAttributes(typeof(ToolboxBitmapAttribute), false); if (attribs != null && attribs.GetLength(0) == 0) attribs = activityType.GetCustomAttributes(typeof(ToolboxBitmapAttribute), true); ToolboxBitmapAttribute toolboxBitmapAttribute = (attribs != null && attribs.GetLength(0) > 0) ? attribs[0] as ToolboxBitmapAttribute : null; if (toolboxBitmapAttribute != null) toolBoxImage = toolboxBitmapAttribute.GetImage(activityType); } return toolBoxImage; } public static string GetToolboxDisplayName(Type activityType) { if (activityType == null) throw new ArgumentNullException("activityType"); string displayName = activityType.Name; object[] toolboxItemAttributes = activityType.GetCustomAttributes(typeof(ToolboxItemAttribute), true); if (toolboxItemAttributes != null && toolboxItemAttributes.Length > 0) { ToolboxItemAttribute toolboxItemAttrib = toolboxItemAttributes[0] as ToolboxItemAttribute; if (toolboxItemAttrib != null && toolboxItemAttrib.ToolboxItemType != null) { try { ToolboxItem item = Activator.CreateInstance(toolboxItemAttrib.ToolboxItemType, new object[] { activityType }) as ToolboxItem; if (item != null) displayName = item.DisplayName; } catch { } } } if (activityType.Assembly != null && activityType.Assembly.FullName != null) { if ((activityType.Assembly.FullName.Equals(AssemblyRef.ActivitiesAssemblyRef, StringComparison.OrdinalIgnoreCase) || activityType.Assembly.FullName.Equals(Assembly.GetExecutingAssembly().FullName, StringComparison.OrdinalIgnoreCase)) && displayName.EndsWith(ActivitySuffix, StringComparison.Ordinal) && !displayName.Equals(ActivitySuffix, StringComparison.Ordinal)) { displayName = displayName.Substring(0, displayName.Length - ActivitySuffix.Length); } } return displayName; } } } // 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
- PolicyStatement.cs
- OleDbParameterCollection.cs
- Rfc4050KeyFormatter.cs
- PropertyOverridesTypeEditor.cs
- TextEndOfLine.cs
- PathFigureCollectionConverter.cs
- Deserializer.cs
- unitconverter.cs
- RpcResponse.cs
- AxHostDesigner.cs
- OperationParameterInfoCollection.cs
- FrameworkReadOnlyPropertyMetadata.cs
- SiteMapNodeItem.cs
- TreeNodeBindingCollection.cs
- ISAPIApplicationHost.cs
- XmlSchemaElement.cs
- BaseAppDomainProtocolHandler.cs
- PropertyNames.cs
- ObjectQuery_EntitySqlExtensions.cs
- SqlNodeAnnotation.cs
- DataGridParentRows.cs
- HttpListenerException.cs
- RequestCachePolicy.cs
- HtmlForm.cs
- NumberFormatInfo.cs
- ListBoxChrome.cs
- OdbcConnectionStringbuilder.cs
- SamlAttributeStatement.cs
- KeySplineConverter.cs
- Int32CollectionValueSerializer.cs
- XmlSchemaAnyAttribute.cs
- TemplateLookupAction.cs
- wmiprovider.cs
- ConfigXmlDocument.cs
- PropertyRecord.cs
- UshortList2.cs
- OleDbException.cs
- ShapingEngine.cs
- ClientWindowsAuthenticationMembershipProvider.cs
- SaveRecipientRequest.cs
- HtmlUtf8RawTextWriter.cs
- ActivityLocationReferenceEnvironment.cs
- LogicalExpr.cs
- Stylesheet.cs
- DbConnectionPoolGroup.cs
- elementinformation.cs
- XamlGridLengthSerializer.cs
- GridItem.cs
- WebOperationContext.cs
- SqlInternalConnectionSmi.cs
- Pts.cs
- DefaultHttpHandler.cs
- XPathNavigatorReader.cs
- StaticResourceExtension.cs
- MouseDevice.cs
- WindowsStartMenu.cs
- RegularExpressionValidator.cs
- AutomationEventArgs.cs
- ChannelManager.cs
- TabControl.cs
- TextWriter.cs
- X509Certificate.cs
- TypefaceCollection.cs
- FontFamily.cs
- ComponentCommands.cs
- IpcClientManager.cs
- ResourceSetExpression.cs
- CompleteWizardStep.cs
- XPathChildIterator.cs
- FormClosedEvent.cs
- DependencyPropertyKey.cs
- DSASignatureDeformatter.cs
- MetadataArtifactLoaderCompositeFile.cs
- RefExpr.cs
- NameGenerator.cs
- StrongNameIdentityPermission.cs
- PropertyPathWorker.cs
- AssertUtility.cs
- unsafenativemethodsother.cs
- WhitespaceRuleReader.cs
- Rect3DValueSerializer.cs
- DesignerDataConnection.cs
- InstancePersistenceException.cs
- DateTimeFormatInfo.cs
- HttpRequest.cs
- ResXResourceSet.cs
- ListItemCollection.cs
- TableParagraph.cs
- InheritanceContextHelper.cs
- HtmlControlPersistable.cs
- CursorInteropHelper.cs
- LayoutTable.cs
- SystemIPInterfaceProperties.cs
- CustomErrorsSectionWrapper.cs
- HtmlSelect.cs
- WmpBitmapEncoder.cs
- SignedXml.cs
- LightweightCodeGenerator.cs
- WhereQueryOperator.cs
- RelationshipConverter.cs