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
- RegexStringValidator.cs
- TrackingProfileSerializer.cs
- GridViewUpdateEventArgs.cs
- SelectionPattern.cs
- _UriTypeConverter.cs
- SaveFileDialog.cs
- TextSimpleMarkerProperties.cs
- WebPartDisplayModeCollection.cs
- HitTestFilterBehavior.cs
- PageSettings.cs
- FixedDSBuilder.cs
- ParseHttpDate.cs
- ResourceDefaultValueAttribute.cs
- MaskedTextBoxDesigner.cs
- MessageBuffer.cs
- ProxyWebPart.cs
- DataColumnMappingCollection.cs
- GenericArgumentsUpdater.cs
- FormClosingEvent.cs
- ObjectConverter.cs
- MemberInfoSerializationHolder.cs
- MgmtResManager.cs
- SafeTimerHandle.cs
- DesignerSelectionListAdapter.cs
- AutomationIdentifier.cs
- QuaternionRotation3D.cs
- InkCanvas.cs
- XPathSelectionIterator.cs
- FaultCallbackWrapper.cs
- XmlNamespaceDeclarationsAttribute.cs
- DirectoryLocalQuery.cs
- MetafileHeaderWmf.cs
- DocComment.cs
- CodePageUtils.cs
- RoleBoolean.cs
- CopyOfAction.cs
- WorkItem.cs
- PathFigure.cs
- cookieexception.cs
- ScrollItemPattern.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- DispatcherHooks.cs
- BamlRecordWriter.cs
- CLRBindingWorker.cs
- ListDictionaryInternal.cs
- TraceEventCache.cs
- JoinGraph.cs
- SortDescription.cs
- EventHandlersStore.cs
- DecimalConstantAttribute.cs
- XmlSerializer.cs
- ExecutionContext.cs
- PeerChannelFactory.cs
- BamlWriter.cs
- XmlQueryCardinality.cs
- CultureInfoConverter.cs
- AutoResizedEvent.cs
- Schedule.cs
- CanExecuteRoutedEventArgs.cs
- InputLanguageCollection.cs
- ElementsClipboardData.cs
- RecognitionEventArgs.cs
- PackageFilter.cs
- X509Extension.cs
- User.cs
- CollectionBuilder.cs
- SqlXml.cs
- Inline.cs
- ValidationRuleCollection.cs
- ServiceAuthorizationManager.cs
- ContactManager.cs
- XmlSchemaSimpleTypeRestriction.cs
- HtmlButton.cs
- WebPageTraceListener.cs
- RunWorkerCompletedEventArgs.cs
- DataRelationCollection.cs
- EDesignUtil.cs
- GridViewAutomationPeer.cs
- DrawingBrush.cs
- XmlSchemaInfo.cs
- ProfessionalColorTable.cs
- ActivityExecutionWorkItem.cs
- HttpMethodConstraint.cs
- ProfileService.cs
- UIElement3D.cs
- DrawingContext.cs
- ProfileService.cs
- StatusBarDesigner.cs
- XmlSerializerFactory.cs
- TransformPattern.cs
- Attributes.cs
- TextWriterTraceListener.cs
- CompiledIdentityConstraint.cs
- IResourceProvider.cs
- linebase.cs
- WindowsFormsHostAutomationPeer.cs
- ValueConversionAttribute.cs
- InputDevice.cs
- DecoderReplacementFallback.cs
- EditableRegion.cs