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
- XsdDateTime.cs
- ListItemCollection.cs
- CatalogZoneBase.cs
- LineServicesRun.cs
- PointUtil.cs
- PropertyPushdownHelper.cs
- ExecutionContext.cs
- DoubleLinkList.cs
- WorkflowInstanceProxy.cs
- QuaternionAnimationBase.cs
- Sentence.cs
- ListBox.cs
- DoubleAnimationUsingPath.cs
- InternalCache.cs
- DataTablePropertyDescriptor.cs
- ObjectToModelValueConverter.cs
- ListControl.cs
- NativeRecognizer.cs
- WhiteSpaceTrimStringConverter.cs
- ComponentGuaranteesAttribute.cs
- GifBitmapEncoder.cs
- ParseHttpDate.cs
- coordinator.cs
- DataContractSerializerSection.cs
- DBCSCodePageEncoding.cs
- KeyEventArgs.cs
- WebServiceParameterData.cs
- Header.cs
- WebMessageEncodingElement.cs
- Comparer.cs
- XmlSchemaExternal.cs
- SimpleTextLine.cs
- TextInfo.cs
- ImmutableObjectAttribute.cs
- SortKey.cs
- DispatcherExceptionEventArgs.cs
- DataGridViewRowConverter.cs
- CodeAccessPermission.cs
- RemotingException.cs
- EventLogPermissionEntry.cs
- WebPartDisplayModeCollection.cs
- PartialCachingAttribute.cs
- AppSecurityManager.cs
- ObjectContext.cs
- GlyphRunDrawing.cs
- DataBinder.cs
- ConstraintCollection.cs
- XpsSerializationManagerAsync.cs
- HttpListenerContext.cs
- LocalIdKeyIdentifierClause.cs
- MarkupExtensionParser.cs
- HostSecurityManager.cs
- SqlDuplicator.cs
- DataPagerCommandEventArgs.cs
- WSTransactionSection.cs
- DynamicAttribute.cs
- HelpEvent.cs
- MessageFormatterConverter.cs
- SqlServer2KCompatibilityCheck.cs
- DiagnosticsConfiguration.cs
- ProcessActivityTreeOptions.cs
- DescendentsWalker.cs
- TreeNodeStyleCollection.cs
- NamedObject.cs
- ListViewGroup.cs
- CompositeControl.cs
- XamlClipboardData.cs
- relpropertyhelper.cs
- WindowsToolbarAsMenu.cs
- FormViewInsertEventArgs.cs
- XmlTextReader.cs
- ReadOnlyPropertyMetadata.cs
- SqlInfoMessageEvent.cs
- AuthenticationModuleElementCollection.cs
- Utils.cs
- BitmapFrameDecode.cs
- DocumentReference.cs
- DataControlFieldCollection.cs
- ListSourceHelper.cs
- CodeTypeDelegate.cs
- FileDialogPermission.cs
- PrePrepareMethodAttribute.cs
- ToolStripItem.cs
- XPathParser.cs
- UIAgentMonitorHandle.cs
- WebException.cs
- ManagementExtension.cs
- selecteditemcollection.cs
- X509SubjectKeyIdentifierClause.cs
- MarkupWriter.cs
- AxisAngleRotation3D.cs
- TailCallAnalyzer.cs
- XamlTypeMapper.cs
- OrthographicCamera.cs
- TypeDefinition.cs
- WebSysDisplayNameAttribute.cs
- AuthenticationConfig.cs
- BrowserCapabilitiesFactory.cs
- MergeExecutor.cs
- ProgressBarBrushConverter.cs