Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / AdvancedBindingPropertyDescriptor.cs / 1 / AdvancedBindingPropertyDescriptor.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Windows.Forms.Design {
using System.Design;
using System;
using System.ComponentModel;
///
///
/// Provides a property description of an advanced binding object.
///
internal class AdvancedBindingPropertyDescriptor : PropertyDescriptor {
internal static AdvancedBindingEditor advancedBindingEditor = new AdvancedBindingEditor();
internal static AdvancedBindingTypeConverter advancedBindingTypeConverter = new AdvancedBindingTypeConverter();
internal AdvancedBindingPropertyDescriptor() : base(SR.GetString(SR.AdvancedBindingPropertyDescName), null) {
}
///
///
/// Gets the type of component this property is bound to.
///
public override Type ComponentType {
get {
return typeof(ControlBindingsCollection);
}
}
public override AttributeCollection Attributes {
get {
return new AttributeCollection(new Attribute[]{new SRDescriptionAttribute(SR.AdvancedBindingPropertyDescriptorDesc),
NotifyParentPropertyAttribute.Yes,
new MergablePropertyAttribute(false)});
}
}
///
///
/// Indicates whether this property is read-only.
///
public override bool IsReadOnly {
get {
return false;
}
}
///
///
/// Gets the type of the property.
///
public override Type PropertyType {
get {
return typeof(object);
}
}
///
///
/// Gets the type converter.
///
public override TypeConverter Converter {
get {
if (advancedBindingTypeConverter == null) {
advancedBindingTypeConverter = new AdvancedBindingTypeConverter();
}
return advancedBindingTypeConverter;
}
}
///
///
/// Gets an editor of the specified type.
///
public override object GetEditor(Type type) {
if (type == typeof(System.Drawing.Design.UITypeEditor)) {
return advancedBindingEditor;
}
return base.GetEditor(type);
}
///
///
/// Indicates whether resetting the component will change the value of the
/// component.
///
public override bool CanResetValue(object component) {
return false;
}
///
///
/// In an derived class, adds the attributes of the inherited class to the
/// specified list of attributes in the parent class.
///
protected override void FillAttributes(System.Collections.IList attributeList) {
attributeList.Add(RefreshPropertiesAttribute.All);
base.FillAttributes(attributeList);
}
///
///
/// Gets the current value of the property on the specified
/// component.
///
public override object GetValue(object component) {
System.Diagnostics.Debug.Assert(component is ControlBindingsCollection, "we only deal w/ bindings collection");
return component;
}
///
///
/// Resets the value of the property on the specified component.
///
public override void ResetValue(object component) {
}
///
///
/// Sets the value of the property on the specified component to the specified
/// value.
///
public override void SetValue(object component, object value) {
}
///
///
/// Indicates whether the value of this property should be persisted.
///
public override bool ShouldSerializeValue(object component) {
return false;
}
internal class AdvancedBindingTypeConverter : TypeConverter {
public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType) {
System.Diagnostics.Debug.Assert(value is ControlBindingsCollection, "we only deal w/ bindings collection");
if (destinationType == typeof(String)) {
return String.Empty;
} else {
return base.ConvertTo(context, culture, value, destinationType);
}
}
}
}
}
// 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
- IndexedEnumerable.cs
- FontStyleConverter.cs
- CurrentTimeZone.cs
- ClusterSafeNativeMethods.cs
- Wizard.cs
- ClientUriBehavior.cs
- NotSupportedException.cs
- BindValidator.cs
- FullTextLine.cs
- FormViewRow.cs
- TextRunProperties.cs
- SymLanguageVendor.cs
- GridViewSortEventArgs.cs
- BigInt.cs
- ProtocolReflector.cs
- DataGridPageChangedEventArgs.cs
- BitmapEffectDrawingContextWalker.cs
- NavigationProgressEventArgs.cs
- ReflectionServiceProvider.cs
- CqlParser.cs
- InteropDesigner.xaml.cs
- PointConverter.cs
- EditorPart.cs
- SystemIPv4InterfaceProperties.cs
- HandleCollector.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- XmlSchemaSimpleContentExtension.cs
- Condition.cs
- Mappings.cs
- AmbiguousMatchException.cs
- SqlConnectionHelper.cs
- ImageList.cs
- ConvertEvent.cs
- DataGridViewTextBoxColumn.cs
- BooleanConverter.cs
- Point3DAnimation.cs
- ReverseInheritProperty.cs
- ThumbAutomationPeer.cs
- X509CertificateCollection.cs
- ScriptControl.cs
- DefaultCommandConverter.cs
- MediaContext.cs
- SHA384.cs
- XamlSerializerUtil.cs
- WebBrowserProgressChangedEventHandler.cs
- NotifyInputEventArgs.cs
- DependentList.cs
- MediaContext.cs
- PropertyDescriptorCollection.cs
- TextElementCollectionHelper.cs
- PolicyReader.cs
- PackageRelationshipCollection.cs
- Axis.cs
- TemplateEditingVerb.cs
- RIPEMD160.cs
- ConstraintConverter.cs
- LinqDataSourceContextEventArgs.cs
- QilUnary.cs
- AsymmetricSignatureFormatter.cs
- PointF.cs
- TypeUtil.cs
- OutputScope.cs
- XmlHelper.cs
- AuthenticationException.cs
- BasicKeyConstraint.cs
- StyleTypedPropertyAttribute.cs
- RuntimeResourceSet.cs
- ClonableStack.cs
- AssemblySettingAttributes.cs
- SQLDouble.cs
- ExpressionServices.cs
- TextSimpleMarkerProperties.cs
- ResourceDisplayNameAttribute.cs
- RemotingConfigParser.cs
- SafeRightsManagementSessionHandle.cs
- Compiler.cs
- TraceUtils.cs
- DelayLoadType.cs
- WinHttpWebProxyFinder.cs
- OptimisticConcurrencyException.cs
- OleDbWrapper.cs
- DataException.cs
- ChangeProcessor.cs
- PointLightBase.cs
- XmlNodeComparer.cs
- FunctionImportMapping.cs
- ProcessThread.cs
- SQLDateTimeStorage.cs
- DataGridCell.cs
- TransformerInfo.cs
- EntityDataSourceContextDisposingEventArgs.cs
- ExtenderProvidedPropertyAttribute.cs
- XmlSerializationWriter.cs
- WeakEventManager.cs
- TypeForwardedToAttribute.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- XmlSchemaAnyAttribute.cs
- BidirectionalDictionary.cs
- StateMachineDesignerPaint.cs
- AuthenticationService.cs