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
- TextTreeNode.cs
- BufferedReadStream.cs
- DecimalFormatter.cs
- filewebresponse.cs
- GridViewColumnHeaderAutomationPeer.cs
- Internal.cs
- OrthographicCamera.cs
- FilterElement.cs
- PackageProperties.cs
- MethodInfo.cs
- FontSource.cs
- AssemblyResourceLoader.cs
- NamedObject.cs
- SystemIPGlobalProperties.cs
- ThumbButtonInfo.cs
- CommandLibraryHelper.cs
- ExtenderProvidedPropertyAttribute.cs
- AttachmentCollection.cs
- PageCatalogPart.cs
- CompilerCollection.cs
- HelpEvent.cs
- ServiceNameElement.cs
- SizeChangedInfo.cs
- HttpDictionary.cs
- Int32Animation.cs
- BrowserCapabilitiesCompiler.cs
- BuildManagerHost.cs
- TextTreeTextBlock.cs
- Symbol.cs
- UdpRetransmissionSettings.cs
- DateTimePicker.cs
- PageSetupDialog.cs
- TextParaClient.cs
- RtfToken.cs
- LineUtil.cs
- COM2ExtendedBrowsingHandler.cs
- XmlSerializerNamespaces.cs
- PersonalizableAttribute.cs
- UdpTransportBindingElement.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- MSAAEventDispatcher.cs
- XPathNodeIterator.cs
- CompositeScriptReferenceEventArgs.cs
- StateWorkerRequest.cs
- BaseServiceProvider.cs
- DataTablePropertyDescriptor.cs
- SqlConnectionStringBuilder.cs
- UserControlAutomationPeer.cs
- ObjRef.cs
- X509CertificateStore.cs
- ObjectListItemCollection.cs
- DynamicValueConverter.cs
- Parser.cs
- PropertyPushdownHelper.cs
- MatrixTransform3D.cs
- SingleKeyFrameCollection.cs
- OleDbInfoMessageEvent.cs
- ExpandableObjectConverter.cs
- SignatureToken.cs
- CollectionViewGroupRoot.cs
- StructuredType.cs
- DbUpdateCommandTree.cs
- ValidatingReaderNodeData.cs
- PaintValueEventArgs.cs
- ViewGenResults.cs
- FlowNode.cs
- XslNumber.cs
- AccessorTable.cs
- ContextProperty.cs
- MenuCommand.cs
- CharConverter.cs
- CodeTryCatchFinallyStatement.cs
- RMEnrollmentPage3.cs
- TablePattern.cs
- XmlSchemaAny.cs
- HttpCapabilitiesEvaluator.cs
- ClientTargetSection.cs
- DocumentViewerHelper.cs
- versioninfo.cs
- KeyValuePair.cs
- InternalBufferOverflowException.cs
- FilterRepeater.cs
- RuleSettingsCollection.cs
- RuntimeResourceSet.cs
- EntityDataSourceContextCreatingEventArgs.cs
- Renderer.cs
- DefaultCompensation.cs
- GPPOINT.cs
- XamlParser.cs
- DetailsViewRowCollection.cs
- MetadataImporter.cs
- HyperLinkField.cs
- ValueType.cs
- ProgressBarAutomationPeer.cs
- FixedTextPointer.cs
- InternalResources.cs
- relpropertyhelper.cs
- Resources.Designer.cs
- TextBox.cs
- EntityConnectionStringBuilder.cs