Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / MS / Internal / Data / BindingWorker.cs / 3 / BindingWorker.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: Defines BindingWorker base class. // //--------------------------------------------------------------------------- using System; using System.Reflection; using System.ComponentModel; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Threading; namespace MS.Internal.Data { // Base class for binding workers. // Derived classes implement binding functionality depending on the // type of source, e.g. ClrBindingWorker, XmlBindingWorker internal abstract class BindingWorker { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- protected BindingWorker(BindingExpression b) { _bindingExpression = b; } //------------------------------------------------------ // // Internal properties - used by parent BindingExpression // //----------------------------------------------------- internal virtual Type SourcePropertyType { get { return null; } } internal virtual bool CanUpdate { get { return false; } } internal BindingExpression ParentBindingExpression { get { return _bindingExpression; } } internal Type TargetPropertyType { get { return TargetProperty.PropertyType; } } internal virtual bool IsDBNullValidForUpdate { get { return false; } } //------------------------------------------------------ // // Internal methods - used by parent BindingExpression // //------------------------------------------------------ internal virtual void AttachDataItem() {} internal virtual void DetachDataItem() {} internal virtual void OnCurrentChanged(ICollectionView collectionView, EventArgs args) {} internal virtual object RawValue() { return null; } internal virtual void UpdateValue(object value) {} internal virtual void RefreshValue() {} internal virtual bool UsesDependencyProperty(DependencyObject d, DependencyProperty dp) { return false; } internal virtual void OnSourceInvalidation(DependencyObject d, DependencyProperty dp, bool isASubPropertyChange) {} internal virtual ValidationError ValidateDataError(BindingExpressionBase bindingExpressionBase) { return null; } //----------------------------------------------------- // // Protected Properties // //------------------------------------------------------ protected Binding ParentBinding { get { return ParentBindingExpression.ParentBinding; } } protected bool IsDynamic { get { return ParentBindingExpression.IsDynamic; } } internal bool IsReflective { get { return ParentBindingExpression.IsReflective; } } protected bool IgnoreSourcePropertyChange { get { return ParentBindingExpression.IgnoreSourcePropertyChange; } } protected object DataItem { get { return ParentBindingExpression.DataItem; } } protected DependencyObject TargetElement { get { return ParentBindingExpression.TargetElement; } } protected DependencyProperty TargetProperty { get { return ParentBindingExpression.TargetProperty; } } protected DataBindEngine Engine { get { return ParentBindingExpression.Engine; } } protected Dispatcher Dispatcher { get { return ParentBindingExpression.Dispatcher; } } protected BindingStatus Status { get { return ParentBindingExpression.Status; } set { ParentBindingExpression.SetStatus(value); } } //----------------------------------------------------- // // Protected Methods // //----------------------------------------------------- protected void SetTransferIsPending(bool value) { ParentBindingExpression.IsTransferPending = value; } //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ BindingExpression _bindingExpression; } } // 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
- AmbientValueAttribute.cs
- TreeNodeMouseHoverEvent.cs
- WebPartUtil.cs
- ListParaClient.cs
- SharedConnectionInfo.cs
- BindingMAnagerBase.cs
- LayoutTable.cs
- CodeMemberField.cs
- TextDecorations.cs
- UdpDiscoveryEndpoint.cs
- OleDbWrapper.cs
- CommonXSendMessage.cs
- FixedPageProcessor.cs
- BindingBase.cs
- TimeoutHelper.cs
- OracleConnectionStringBuilder.cs
- WebPartEditorCancelVerb.cs
- BitFlagsGenerator.cs
- MobileUserControl.cs
- MetadataException.cs
- PeerTransportSecuritySettings.cs
- InheritanceContextChangedEventManager.cs
- UTF8Encoding.cs
- XmlChoiceIdentifierAttribute.cs
- XamlDesignerSerializationManager.cs
- SpotLight.cs
- DataServiceHostWrapper.cs
- ParseChildrenAsPropertiesAttribute.cs
- StorageAssociationSetMapping.cs
- RelationshipNavigation.cs
- MetadataArtifactLoaderComposite.cs
- ShadowGlyph.cs
- TraceUtils.cs
- DynamicDocumentPaginator.cs
- ApplicationSecurityInfo.cs
- ReadOnlyNameValueCollection.cs
- TreeView.cs
- DataSvcMapFileSerializer.cs
- OleAutBinder.cs
- DayRenderEvent.cs
- BrowserDefinitionCollection.cs
- ByeMessage11.cs
- TemplateField.cs
- _NetRes.cs
- InplaceBitmapMetadataWriter.cs
- DrawingAttributesDefaultValueFactory.cs
- SqlDataSourceSelectingEventArgs.cs
- Expression.cs
- Control.cs
- MatcherBuilder.cs
- ColumnTypeConverter.cs
- WinFormsSecurity.cs
- X500Name.cs
- NameSpaceExtractor.cs
- MouseActionValueSerializer.cs
- MenuTracker.cs
- HtmlTableCell.cs
- ComPlusTypeLoader.cs
- ConvertBinder.cs
- VerticalAlignConverter.cs
- HTMLTagNameToTypeMapper.cs
- CroppedBitmap.cs
- DataTemplateSelector.cs
- ToolstripProfessionalRenderer.cs
- ConfigurationSectionGroupCollection.cs
- SchemaInfo.cs
- ObjectConverter.cs
- AttributeCollection.cs
- ReadOnlyPermissionSet.cs
- SystemIcmpV6Statistics.cs
- ObjectHelper.cs
- ControlsConfig.cs
- GenericTextProperties.cs
- X509Utils.cs
- XmlWrappingReader.cs
- CustomWebEventKey.cs
- XmlSchemaAnnotated.cs
- ViewgenContext.cs
- FunctionImportElement.cs
- CompilationLock.cs
- unsafeIndexingFilterStream.cs
- login.cs
- KnownBoxes.cs
- HybridWebProxyFinder.cs
- ListViewItem.cs
- MediaTimeline.cs
- WebBrowserProgressChangedEventHandler.cs
- SchemaImporterExtension.cs
- SessionStateModule.cs
- CodeExporter.cs
- AutomationElementCollection.cs
- DockEditor.cs
- TypeUtil.cs
- RoleServiceManager.cs
- TableLayoutCellPaintEventArgs.cs
- ContainerControlDesigner.cs
- DocumentApplication.cs
- ContentType.cs
- SystemUnicastIPAddressInformation.cs
- ThicknessConverter.cs