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
- Journal.cs
- CodeExpressionCollection.cs
- UnmanagedHandle.cs
- WebPartCloseVerb.cs
- SqlWorkflowInstanceStoreLock.cs
- Token.cs
- SafeFindHandle.cs
- ClientSideQueueItem.cs
- WpfMemberInvoker.cs
- FileCodeGroup.cs
- WpfSharedXamlSchemaContext.cs
- ImagingCache.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- Image.cs
- _ServiceNameStore.cs
- XmlAggregates.cs
- UnknownWrapper.cs
- GridItemCollection.cs
- Label.cs
- SmiEventStream.cs
- EntityDataSourceColumn.cs
- ControlIdConverter.cs
- IndentedTextWriter.cs
- EntitySqlQueryState.cs
- TextCharacters.cs
- PackageStore.cs
- SoapReflector.cs
- XmlSchemas.cs
- DetailsViewDeletedEventArgs.cs
- OperationGenerator.cs
- DataGridViewLinkCell.cs
- LinearGradientBrush.cs
- RenamedEventArgs.cs
- HostedNamedPipeTransportManager.cs
- ConstraintStruct.cs
- MouseGesture.cs
- SHA1CryptoServiceProvider.cs
- prompt.cs
- LayoutExceptionEventArgs.cs
- RestHandlerFactory.cs
- TableStyle.cs
- ResumeStoryboard.cs
- RootAction.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- Sql8ExpressionRewriter.cs
- WizardStepBase.cs
- XmlFormatExtensionPrefixAttribute.cs
- OuterGlowBitmapEffect.cs
- PresentationSource.cs
- MouseActionValueSerializer.cs
- ConfigurationSectionGroup.cs
- GridViewSelectEventArgs.cs
- CodeAttributeDeclarationCollection.cs
- EventMap.cs
- ErrorWebPart.cs
- SamlAssertionKeyIdentifierClause.cs
- WebConfigurationFileMap.cs
- EntityClassGenerator.cs
- DataGridViewHitTestInfo.cs
- TransformerInfoCollection.cs
- MaskedTextBox.cs
- DataRelationPropertyDescriptor.cs
- IsolatedStorage.cs
- DrawingImage.cs
- HtmlAnchor.cs
- ButtonBase.cs
- X509CertificateCollection.cs
- Viewport3DVisual.cs
- RevocationPoint.cs
- NumericUpDownAccelerationCollection.cs
- KnownBoxes.cs
- ElementUtil.cs
- XNodeSchemaApplier.cs
- Polyline.cs
- CustomValidator.cs
- CompatibleIComparer.cs
- TextRangeBase.cs
- WindowsFormsHostPropertyMap.cs
- PermissionListSet.cs
- ClientUriBehavior.cs
- TypeConverters.cs
- CommonXSendMessage.cs
- SoapTypeAttribute.cs
- WebPartDisplayModeEventArgs.cs
- MarginsConverter.cs
- VariableQuery.cs
- SubpageParagraph.cs
- TextRangeProviderWrapper.cs
- Vector3DKeyFrameCollection.cs
- BasePattern.cs
- BitmapCacheBrush.cs
- XmlSchemaValidationException.cs
- InstanceDescriptor.cs
- NavigationProperty.cs
- LoginStatusDesigner.cs
- FileDialogCustomPlacesCollection.cs
- ApplicationInterop.cs
- MSHTMLHost.cs
- GridViewCommandEventArgs.cs
- RepeaterItemCollection.cs