Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / CompMod / System / ComponentModel / BindableAttribute.cs / 1 / BindableAttribute.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
/*
*/
namespace System.ComponentModel {
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Security.Permissions;
///
/// Specifies whether a property is appropriate to bind data
/// to.
///
[AttributeUsage(AttributeTargets.All)]
public sealed class BindableAttribute : Attribute {
///
///
/// Specifies that a property is appropriate to bind data to. This
/// field is read-only.
///
///
public static readonly BindableAttribute Yes = new BindableAttribute(true);
///
///
/// Specifies that a property is not appropriate to bind
/// data to. This field is read-only.
///
///
public static readonly BindableAttribute No = new BindableAttribute(false);
///
///
/// Specifies the default value for the ,
/// which is . This field is
/// read-only.
///
///
public static readonly BindableAttribute Default = No;
private bool bindable = false;
private bool isDefault = false;
private BindingDirection direction;
///
///
/// Initializes a new instance of the class.
///
///
public BindableAttribute(bool bindable) : this(bindable, BindingDirection.OneWay) {
}
///
///
/// Initializes a new instance of the class.
///
///
public BindableAttribute(bool bindable, BindingDirection direction) {
this.bindable = bindable;
this.direction = direction;
}
///
///
/// Initializes a new instance of the class.
///
///
public BindableAttribute(BindableSupport flags) : this(flags, BindingDirection.OneWay) {
}
///
///
/// Initializes a new instance of the class.
///
///
public BindableAttribute(BindableSupport flags, BindingDirection direction) {
this.bindable = (flags != BindableSupport.No);
this.isDefault = (flags == BindableSupport.Default);
this.direction = direction;
}
///
///
/// Gets a value indicating
/// whether a property is appropriate to bind data to.
///
///
public bool Bindable {
get {
return bindable;
}
}
///
///
/// Gets a value indicating
/// the direction(s) this property be bound to data.
///
///
public BindingDirection Direction {
get {
return direction;
}
}
///
///
///
public override bool Equals(object obj) {
if (obj == this) {
return true;
}
if (obj != null && obj is BindableAttribute) {
return (((BindableAttribute)obj).Bindable == bindable);
}
return false;
}
///
/// [To be supplied.]
///
public override int GetHashCode() {
return bindable.GetHashCode();
}
///
///
///
public override bool IsDefaultAttribute() {
return (this.Equals(Default) || isDefault);
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HttpApplication.cs
- TreeNodeStyleCollection.cs
- IdentityHolder.cs
- FontTypeConverter.cs
- GridErrorDlg.cs
- CompareValidator.cs
- QueuePathDialog.cs
- ExternalCalls.cs
- SecurityBindingElementImporter.cs
- WebResourceAttribute.cs
- ReadOnlyDataSource.cs
- OperationResponse.cs
- XmlILAnnotation.cs
- ViewGenerator.cs
- ObjectDataSourceChooseMethodsPanel.cs
- AssertFilter.cs
- EntityUtil.cs
- LostFocusEventManager.cs
- OpCodes.cs
- CreateRefExpr.cs
- TreeNodeSelectionProcessor.cs
- TypeUtil.cs
- TabletCollection.cs
- EncoderNLS.cs
- ConnectionsZone.cs
- WaitHandle.cs
- XamlReaderHelper.cs
- Mouse.cs
- SmiContextFactory.cs
- DataBindingCollection.cs
- DispatcherHooks.cs
- MatrixAnimationUsingPath.cs
- DesignerDataConnection.cs
- CapabilitiesSection.cs
- METAHEADER.cs
- DrawListViewColumnHeaderEventArgs.cs
- GraphicsContext.cs
- LoginUtil.cs
- StandardTransformFactory.cs
- ForEachAction.cs
- DataGridViewTopLeftHeaderCell.cs
- CollectionViewGroup.cs
- HttpListenerContext.cs
- shaperfactoryquerycacheentry.cs
- CellConstantDomain.cs
- SchemaManager.cs
- RTLAwareMessageBox.cs
- StickyNote.cs
- TargetParameterCountException.cs
- Command.cs
- XmlValidatingReaderImpl.cs
- BaseTemplateCodeDomTreeGenerator.cs
- ChineseLunisolarCalendar.cs
- Latin1Encoding.cs
- EnlistmentTraceIdentifier.cs
- AnnotationObservableCollection.cs
- TextContainerHelper.cs
- Calendar.cs
- HotSpotCollection.cs
- MaterialGroup.cs
- glyphs.cs
- PageBuildProvider.cs
- TypeContext.cs
- FrameDimension.cs
- BridgeDataRecord.cs
- Pair.cs
- CodeDOMUtility.cs
- RSAOAEPKeyExchangeDeformatter.cs
- SuppressMessageAttribute.cs
- CollectionBuilder.cs
- MobileListItem.cs
- EventMap.cs
- DocumentSequenceHighlightLayer.cs
- ConfigsHelper.cs
- TextChange.cs
- CustomAttribute.cs
- TileBrush.cs
- ClientRoleProvider.cs
- RuntimeCompatibilityAttribute.cs
- WebPartCatalogAddVerb.cs
- LineGeometry.cs
- AppModelKnownContentFactory.cs
- PropertyCollection.cs
- SortedSet.cs
- FlowDocumentReaderAutomationPeer.cs
- DynamicQueryableWrapper.cs
- ValidatingReaderNodeData.cs
- EtwTrackingParticipant.cs
- HtmlInputFile.cs
- AllMembershipCondition.cs
- ClientScriptManager.cs
- EditorAttribute.cs
- Permission.cs
- SqlMethods.cs
- PrintPreviewDialog.cs
- DispatcherSynchronizationContext.cs
- TransactionScope.cs
- BinaryFormatter.cs
- PageTheme.cs
- CollectionViewGroupRoot.cs