Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / MS / Internal / Data / BindingWorker.cs / 1305600 / 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 virtual object SourceItem { get { return null; } } internal virtual string SourcePropertyName { get { return null; } } //------------------------------------------------------ // // 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; } internal virtual bool IsPathCurrent() { return true; } //----------------------------------------------------- // // 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
- InputReferenceExpression.cs
- DeferredRunTextReference.cs
- BrushMappingModeValidation.cs
- LogLogRecordHeader.cs
- CacheMemory.cs
- HttpHeaderCollection.cs
- Configuration.cs
- CodeVariableReferenceExpression.cs
- ProcessProtocolHandler.cs
- BitmapEffectInputData.cs
- FixedSOMFixedBlock.cs
- Permission.cs
- documentsequencetextpointer.cs
- BinaryQueryOperator.cs
- GridViewRowPresenter.cs
- TextReader.cs
- Catch.cs
- IList.cs
- MsmqIntegrationMessageProperty.cs
- CopyAction.cs
- BamlLocalizabilityResolver.cs
- SqlVersion.cs
- HotSpotCollectionEditor.cs
- ButtonColumn.cs
- XmlSortKeyAccumulator.cs
- NativeMethods.cs
- OutArgument.cs
- SqlUserDefinedTypeAttribute.cs
- CodeTypeReferenceCollection.cs
- OrCondition.cs
- OdbcEnvironmentHandle.cs
- ReferentialConstraint.cs
- Reference.cs
- ISAPIRuntime.cs
- HtmlElementErrorEventArgs.cs
- DataGridViewCellFormattingEventArgs.cs
- CultureData.cs
- login.cs
- ButtonColumn.cs
- WrappedIUnknown.cs
- IgnorePropertiesAttribute.cs
- GifBitmapDecoder.cs
- HostUtils.cs
- Deserializer.cs
- IndexerHelper.cs
- OperatingSystem.cs
- RequestContextBase.cs
- SpnegoTokenProvider.cs
- StylusPointPropertyInfo.cs
- GlyphElement.cs
- InvalidEnumArgumentException.cs
- SapiRecognizer.cs
- MultiPartWriter.cs
- GridViewRowCollection.cs
- SqlCacheDependencySection.cs
- TypeResolver.cs
- ConsoleTraceListener.cs
- WmpBitmapEncoder.cs
- HttpInputStream.cs
- Array.cs
- FamilyMap.cs
- SessionEndingCancelEventArgs.cs
- CodeRemoveEventStatement.cs
- ReferentialConstraintRoleElement.cs
- DataRowChangeEvent.cs
- BuilderPropertyEntry.cs
- FontCacheUtil.cs
- DesignerValidatorAdapter.cs
- MobileUserControl.cs
- MemberHolder.cs
- TemplateInstanceAttribute.cs
- DefaultDiscoveryService.cs
- CommandManager.cs
- ChannelSinkStacks.cs
- StorageConditionPropertyMapping.cs
- PassportPrincipal.cs
- ThreadExceptionEvent.cs
- StylusPoint.cs
- PermissionRequestEvidence.cs
- QfeChecker.cs
- PrimarySelectionAdorner.cs
- PerspectiveCamera.cs
- compensatingcollection.cs
- ConcurrentStack.cs
- CreateUserWizard.cs
- Mapping.cs
- SafeCryptHandles.cs
- QilLiteral.cs
- DisplayMemberTemplateSelector.cs
- EdmSchemaAttribute.cs
- TimeIntervalCollection.cs
- SafeCryptContextHandle.cs
- PerfService.cs
- MostlySingletonList.cs
- XamlPoint3DCollectionSerializer.cs
- BitmapCache.cs
- RequestCacheEntry.cs
- FSWPathEditor.cs
- CryptographicAttribute.cs
- XmlSiteMapProvider.cs