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
- DataGridCell.cs
- HtmlTableCellCollection.cs
- Int32Rect.cs
- VarRemapper.cs
- SmiEventSink.cs
- ToolStripCodeDomSerializer.cs
- SystemIPInterfaceProperties.cs
- DataGridViewCellCollection.cs
- TransformGroup.cs
- Serializer.cs
- SoapTypeAttribute.cs
- DetailsViewInsertedEventArgs.cs
- WindowsSspiNegotiation.cs
- XmlArrayAttribute.cs
- WizardPanelChangingEventArgs.cs
- HttpRuntime.cs
- BaseProcessor.cs
- ISFTagAndGuidCache.cs
- ItemsControl.cs
- Tablet.cs
- SystemIPInterfaceStatistics.cs
- UnsafeNativeMethods.cs
- CompoundFileStreamReference.cs
- securitycriticaldata.cs
- IInstanceContextProvider.cs
- ToolStripScrollButton.cs
- MetafileHeader.cs
- clipboard.cs
- GeneralTransform2DTo3DTo2D.cs
- TemplateControl.cs
- ToolStripDropDown.cs
- DateTimeOffsetConverter.cs
- RepeaterItemEventArgs.cs
- HttpListenerResponse.cs
- remotingproxy.cs
- ToggleProviderWrapper.cs
- QuaternionRotation3D.cs
- ErrorEventArgs.cs
- LowerCaseStringConverter.cs
- TextTreeFixupNode.cs
- LongTypeConverter.cs
- LinkTarget.cs
- GB18030Encoding.cs
- ILGen.cs
- TypeDescriptor.cs
- StrokeRenderer.cs
- TreeBuilderXamlTranslator.cs
- FormsAuthenticationTicket.cs
- XmlEventCache.cs
- WebBrowserNavigatedEventHandler.cs
- MonthCalendarDesigner.cs
- IxmlLineInfo.cs
- PieceDirectory.cs
- DataGridItemAutomationPeer.cs
- DbMetaDataColumnNames.cs
- MethodBuilder.cs
- ToolStripDropDownMenu.cs
- QilReference.cs
- PasswordTextContainer.cs
- UInt32Converter.cs
- InputLanguageManager.cs
- UpdatePanel.cs
- MimeTypeMapper.cs
- Panel.cs
- UpdateEventArgs.cs
- AutomationProperty.cs
- ServiceModelConfigurationSectionGroup.cs
- AbsoluteQuery.cs
- XmlWrappingWriter.cs
- DeclarationUpdate.cs
- RepeaterItem.cs
- DifferencingCollection.cs
- Matrix3D.cs
- GenericTypeParameterBuilder.cs
- Region.cs
- DataObjectAttribute.cs
- FragmentNavigationEventArgs.cs
- LinqDataSourceView.cs
- PrimitiveXmlSerializers.cs
- TextRenderer.cs
- RelationshipFixer.cs
- HwndSource.cs
- ApplicationHost.cs
- BitSet.cs
- HttpCachePolicyWrapper.cs
- StickyNote.cs
- DaylightTime.cs
- Item.cs
- DataSetMappper.cs
- Avt.cs
- CheckBoxPopupAdapter.cs
- ParseElement.cs
- Label.cs
- RelationshipConverter.cs
- XMLDiffLoader.cs
- PasswordDeriveBytes.cs
- MetadataItemCollectionFactory.cs
- ReferentialConstraint.cs
- FunctionMappingTranslator.cs
- BinaryCommonClasses.cs