Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / CompMod / System / ComponentModel / Design / ToolboxItemAttribute.cs / 1 / ToolboxItemAttribute.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
// SECREVIEW: remove this attribute once bug#411883 is fixed.
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2113:SecureLateBindingMethods", Scope="member", Target="System.ComponentModel.ToolboxItemAttribute.get_ToolboxItemType():System.Type")]
namespace System.ComponentModel {
using System;
using System.Diagnostics;
using System.Globalization;
using System.Security.Permissions;
///
///
/// Specifies attributes for a toolbox item.
///
///
[AttributeUsage(AttributeTargets.All)]
public class ToolboxItemAttribute : Attribute {
private Type toolboxItemType;
private string toolboxItemTypeName;
///
///
/// Initializes a new instance of ToolboxItemAttribute and sets the type to
/// IComponent.
///
///
public static readonly ToolboxItemAttribute Default = new ToolboxItemAttribute("System.Drawing.Design.ToolboxItem, " + AssemblyRef.SystemDrawing);
///
///
/// Initializes a new instance of ToolboxItemAttribute and sets the type to
/// .
///
///
public static readonly ToolboxItemAttribute None = new ToolboxItemAttribute(false);
///
///
/// Gets whether the attribute is the default attribute.
///
///
public override bool IsDefaultAttribute() {
return this.Equals(Default);
}
///
///
/// Initializes a new instance of ToolboxItemAttribute and
/// specifies if default values should be used.
///
///
public ToolboxItemAttribute(bool defaultType) {
if (defaultType) {
toolboxItemTypeName = "System.Drawing.Design.ToolboxItem, " + AssemblyRef.SystemDrawing;
}
}
///
///
/// Initializes a new instance of ToolboxItemAttribute and
/// specifies the name of the type.
///
///
public ToolboxItemAttribute(string toolboxItemTypeName) {
string temp = toolboxItemTypeName.ToUpper(CultureInfo.InvariantCulture);
Debug.Assert(temp.IndexOf(".DLL") == -1, "Came across: " + toolboxItemTypeName + " . Please remove the .dll extension");
this.toolboxItemTypeName = toolboxItemTypeName;
}
///
///
/// Initializes a new instance of ToolboxItemAttribute and
/// specifies the type of the toolbox item.
///
///
public ToolboxItemAttribute(Type toolboxItemType) {
this.toolboxItemType = toolboxItemType;
this.toolboxItemTypeName = toolboxItemType.AssemblyQualifiedName;
}
///
///
/// Gets the toolbox item's type.
///
///
public Type ToolboxItemType {
get{
if (toolboxItemType == null) {
if (toolboxItemTypeName != null) {
try {
toolboxItemType = Type.GetType(toolboxItemTypeName, true);
}
catch (Exception ex) {
throw new ArgumentException(SR.GetString(SR.ToolboxItemAttributeFailedGetType, toolboxItemTypeName), ex);
}
}
}
return toolboxItemType;
}
}
public string ToolboxItemTypeName {
get {
if (toolboxItemTypeName == null) {
return String.Empty;
}
return toolboxItemTypeName;
}
}
public override bool Equals(object obj) {
if (obj == this) {
return true;
}
ToolboxItemAttribute other = obj as ToolboxItemAttribute;
return (other != null) && (other.ToolboxItemTypeName == ToolboxItemTypeName);
}
public override int GetHashCode() {
if (toolboxItemTypeName != null) {
return toolboxItemTypeName.GetHashCode();
}
return base.GetHashCode();
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
// SECREVIEW: remove this attribute once bug#411883 is fixed.
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2113:SecureLateBindingMethods", Scope="member", Target="System.ComponentModel.ToolboxItemAttribute.get_ToolboxItemType():System.Type")]
namespace System.ComponentModel {
using System;
using System.Diagnostics;
using System.Globalization;
using System.Security.Permissions;
///
///
/// Specifies attributes for a toolbox item.
///
///
[AttributeUsage(AttributeTargets.All)]
public class ToolboxItemAttribute : Attribute {
private Type toolboxItemType;
private string toolboxItemTypeName;
///
///
/// Initializes a new instance of ToolboxItemAttribute and sets the type to
/// IComponent.
///
///
public static readonly ToolboxItemAttribute Default = new ToolboxItemAttribute("System.Drawing.Design.ToolboxItem, " + AssemblyRef.SystemDrawing);
///
///
/// Initializes a new instance of ToolboxItemAttribute and sets the type to
/// .
///
///
public static readonly ToolboxItemAttribute None = new ToolboxItemAttribute(false);
///
///
/// Gets whether the attribute is the default attribute.
///
///
public override bool IsDefaultAttribute() {
return this.Equals(Default);
}
///
///
/// Initializes a new instance of ToolboxItemAttribute and
/// specifies if default values should be used.
///
///
public ToolboxItemAttribute(bool defaultType) {
if (defaultType) {
toolboxItemTypeName = "System.Drawing.Design.ToolboxItem, " + AssemblyRef.SystemDrawing;
}
}
///
///
/// Initializes a new instance of ToolboxItemAttribute and
/// specifies the name of the type.
///
///
public ToolboxItemAttribute(string toolboxItemTypeName) {
string temp = toolboxItemTypeName.ToUpper(CultureInfo.InvariantCulture);
Debug.Assert(temp.IndexOf(".DLL") == -1, "Came across: " + toolboxItemTypeName + " . Please remove the .dll extension");
this.toolboxItemTypeName = toolboxItemTypeName;
}
///
///
/// Initializes a new instance of ToolboxItemAttribute and
/// specifies the type of the toolbox item.
///
///
public ToolboxItemAttribute(Type toolboxItemType) {
this.toolboxItemType = toolboxItemType;
this.toolboxItemTypeName = toolboxItemType.AssemblyQualifiedName;
}
///
///
/// Gets the toolbox item's type.
///
///
public Type ToolboxItemType {
get{
if (toolboxItemType == null) {
if (toolboxItemTypeName != null) {
try {
toolboxItemType = Type.GetType(toolboxItemTypeName, true);
}
catch (Exception ex) {
throw new ArgumentException(SR.GetString(SR.ToolboxItemAttributeFailedGetType, toolboxItemTypeName), ex);
}
}
}
return toolboxItemType;
}
}
public string ToolboxItemTypeName {
get {
if (toolboxItemTypeName == null) {
return String.Empty;
}
return toolboxItemTypeName;
}
}
public override bool Equals(object obj) {
if (obj == this) {
return true;
}
ToolboxItemAttribute other = obj as ToolboxItemAttribute;
return (other != null) && (other.ToolboxItemTypeName == ToolboxItemTypeName);
}
public override int GetHashCode() {
if (toolboxItemTypeName != null) {
return toolboxItemTypeName.GetHashCode();
}
return base.GetHashCode();
}
}
}
// 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
- FixedTextContainer.cs
- MultiByteCodec.cs
- DataGridColumn.cs
- TdsValueSetter.cs
- PageAsyncTask.cs
- ColumnHeaderConverter.cs
- EUCJPEncoding.cs
- CodeAssignStatement.cs
- ConnectionProviderAttribute.cs
- FixedHyperLink.cs
- MethodAccessException.cs
- Floater.cs
- CmsInterop.cs
- RightsManagementEncryptionTransform.cs
- GroupBox.cs
- WindowsProgressbar.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- RtfToken.cs
- HandleCollector.cs
- RelationshipDetailsRow.cs
- AssemblyNameProxy.cs
- OdbcUtils.cs
- DuplicateWaitObjectException.cs
- InputScopeNameConverter.cs
- Drawing.cs
- WorkflowPrinting.cs
- Converter.cs
- OptionUsage.cs
- CodeMethodReturnStatement.cs
- PeerResolverMode.cs
- DataGridViewLayoutData.cs
- QueryResult.cs
- XslNumber.cs
- BufferedWebEventProvider.cs
- ResourceManager.cs
- FormsAuthenticationUser.cs
- NonSerializedAttribute.cs
- DynamicPhysicalDiscoSearcher.cs
- FormsAuthenticationModule.cs
- SchemaExporter.cs
- BaseCodeDomTreeGenerator.cs
- ConnectionStringsExpressionEditor.cs
- Zone.cs
- BreadCrumbTextConverter.cs
- XappLauncher.cs
- CaseExpr.cs
- SamlAction.cs
- XPathDocumentIterator.cs
- ExpressionBuilderCollection.cs
- safex509handles.cs
- TypeForwardedFromAttribute.cs
- ILGenerator.cs
- _SslSessionsCache.cs
- DetailsViewPagerRow.cs
- AutoSizeComboBox.cs
- ListDictionaryInternal.cs
- Compilation.cs
- WebPartExportVerb.cs
- HttpAsyncResult.cs
- SafeArrayTypeMismatchException.cs
- IArgumentProvider.cs
- KeyGestureValueSerializer.cs
- DbModificationCommandTree.cs
- COM2ExtendedBrowsingHandler.cs
- HandledEventArgs.cs
- OverflowException.cs
- Calendar.cs
- AmbientLight.cs
- CategoryAttribute.cs
- Compilation.cs
- SrgsItemList.cs
- FixedSOMPageElement.cs
- AspNetCacheProfileAttribute.cs
- ImageCodecInfo.cs
- MachineKeyValidationConverter.cs
- XmlTextEncoder.cs
- CookielessData.cs
- FontFaceLayoutInfo.cs
- PhysicalFontFamily.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- DialogResultConverter.cs
- LoadWorkflowByInstanceKeyCommand.cs
- GlobalDataBindingHandler.cs
- OverlappedAsyncResult.cs
- SettingsBase.cs
- WorkflowServiceInstance.cs
- FontWeights.cs
- ListBox.cs
- BuildProviderInstallComponent.cs
- UpdateManifestForBrowserApplication.cs
- XmlAnyElementAttribute.cs
- ModelItemDictionary.cs
- DbProviderServices.cs
- StateMachineExecutionState.cs
- PartialTrustVisibleAssembly.cs
- DbConnectionFactory.cs
- CommandPlan.cs
- HandleCollector.cs
- StorageConditionPropertyMapping.cs
- WebControlAdapter.cs