Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- DoubleAnimationClockResource.cs
- EntityClassGenerator.cs
- DataGridView.cs
- KeyboardEventArgs.cs
- xmlsaver.cs
- ISCIIEncoding.cs
- SrgsNameValueTag.cs
- DataKeyCollection.cs
- SvcMapFile.cs
- PolicyLevel.cs
- UnsafeNativeMethodsMilCoreApi.cs
- BufferedResponseStream.cs
- ToolStripItemClickedEventArgs.cs
- FormViewDeletedEventArgs.cs
- XmlQualifiedName.cs
- EntityDataSourceValidationException.cs
- CodeDOMUtility.cs
- XmlSchemaSimpleType.cs
- GatewayDefinition.cs
- WinInetCache.cs
- IdleTimeoutMonitor.cs
- GlyphingCache.cs
- Separator.cs
- MatrixTransform.cs
- InfoCardRSACryptoProvider.cs
- XmlILOptimizerVisitor.cs
- CryptoConfig.cs
- UIElementParagraph.cs
- OutputScopeManager.cs
- HttpModuleActionCollection.cs
- ObjectItemCachedAssemblyLoader.cs
- LockCookie.cs
- XmlnsCache.cs
- AppearanceEditorPart.cs
- PointAnimation.cs
- TextClipboardData.cs
- CounterSampleCalculator.cs
- SortKey.cs
- IHttpResponseInternal.cs
- PieceDirectory.cs
- VideoDrawing.cs
- Utils.cs
- VariableElement.cs
- RuntimeHandles.cs
- ToolStripItemCollection.cs
- Span.cs
- SQLDecimal.cs
- MemberPathMap.cs
- Point3DCollection.cs
- TypedAsyncResult.cs
- WorkflowRuntimeService.cs
- IncrementalHitTester.cs
- ProfileProvider.cs
- ScriptingAuthenticationServiceSection.cs
- UserPersonalizationStateInfo.cs
- SchemaElementLookUpTableEnumerator.cs
- PostBackTrigger.cs
- ApplicationServicesHostFactory.cs
- DeferredElementTreeState.cs
- XmlSchemaAnnotation.cs
- ReferentialConstraintRoleElement.cs
- ChannelCredentials.cs
- RoutedPropertyChangedEventArgs.cs
- ThrowHelper.cs
- SoapServerProtocol.cs
- RunWorkerCompletedEventArgs.cs
- SchemaNamespaceManager.cs
- EntitySqlQueryState.cs
- SizeConverter.cs
- HighlightVisual.cs
- XmlChildNodes.cs
- CodeAttributeDeclarationCollection.cs
- cookieexception.cs
- EdmRelationshipRoleAttribute.cs
- HttpCacheParams.cs
- SchemaTableOptionalColumn.cs
- Decimal.cs
- newinstructionaction.cs
- MsmqHostedTransportManager.cs
- PlaceHolder.cs
- ServiceModelActivity.cs
- BinaryObjectInfo.cs
- DataGridViewCellConverter.cs
- PopupRootAutomationPeer.cs
- LogSwitch.cs
- SHA384Managed.cs
- IMembershipProvider.cs
- UserControlDocumentDesigner.cs
- FontFamily.cs
- TileModeValidation.cs
- DependencyObjectProvider.cs
- DynamicRendererThreadManager.cs
- LicenseContext.cs
- Point4D.cs
- DbConnectionHelper.cs
- ShutDownListener.cs
- ContextActivityUtils.cs
- XPathSelfQuery.cs
- ZipIOZip64EndOfCentralDirectoryLocatorBlock.cs
- Transform.cs