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
- DocumentReference.cs
- TdsParserHelperClasses.cs
- DoubleAnimationUsingPath.cs
- SoapFault.cs
- ChangeProcessor.cs
- SqlDataSourceSelectingEventArgs.cs
- ScriptIgnoreAttribute.cs
- ResourceManager.cs
- BaseProcessor.cs
- DesignerAdapterAttribute.cs
- CompilerInfo.cs
- SiteMapPath.cs
- MenuScrollingVisibilityConverter.cs
- exports.cs
- MessagePartDescription.cs
- TranslateTransform3D.cs
- _SSPIWrapper.cs
- WebSysDefaultValueAttribute.cs
- WorkflowDebuggerSteppingAttribute.cs
- EmbeddedMailObjectsCollection.cs
- AdRotator.cs
- Style.cs
- DebuggerAttributes.cs
- Panel.cs
- Int16Animation.cs
- MaskInputRejectedEventArgs.cs
- MsmqBindingElementBase.cs
- TypefaceMap.cs
- EventOpcode.cs
- SiteOfOriginContainer.cs
- UriSection.cs
- TransformedBitmap.cs
- ProjectionAnalyzer.cs
- BCryptNative.cs
- BitmapCacheBrush.cs
- HttpContext.cs
- EntityProviderFactory.cs
- ListViewGroupItemCollection.cs
- CallContext.cs
- WindowsGraphicsWrapper.cs
- OverflowException.cs
- ColumnTypeConverter.cs
- PolicyAssertionCollection.cs
- CodeEntryPointMethod.cs
- ServicePoint.cs
- BaseTemplateParser.cs
- RegexInterpreter.cs
- HelloMessageApril2005.cs
- BinHexEncoder.cs
- QueryStringParameter.cs
- DataGridViewCellStyleContentChangedEventArgs.cs
- WebBrowser.cs
- Win32Native.cs
- BlurEffect.cs
- DataGridViewCellCancelEventArgs.cs
- ModelMemberCollection.cs
- Guid.cs
- VariantWrapper.cs
- ToolboxControl.cs
- EncodingTable.cs
- NameSpaceEvent.cs
- PageThemeParser.cs
- ColumnHeader.cs
- SqlBulkCopyColumnMappingCollection.cs
- ItemMap.cs
- MostlySingletonList.cs
- ResourcePool.cs
- PropertyAccessVisitor.cs
- ServiceOperationViewControl.cs
- ToolZone.cs
- DataGridTableCollection.cs
- TextBoxLine.cs
- GuidConverter.cs
- DecimalAverageAggregationOperator.cs
- Single.cs
- ReadOnlyDictionary.cs
- VariableQuery.cs
- FamilyMapCollection.cs
- HighlightVisual.cs
- BuilderElements.cs
- HttpApplication.cs
- TreeViewImageKeyConverter.cs
- CallbackHandler.cs
- Table.cs
- AspNetHostingPermission.cs
- URLIdentityPermission.cs
- FileRegion.cs
- XhtmlBasicPhoneCallAdapter.cs
- IndexedEnumerable.cs
- ProfilePropertyMetadata.cs
- DataGridToolTip.cs
- ManagementInstaller.cs
- compensatingcollection.cs
- Floater.cs
- DesignTimeParseData.cs
- APCustomTypeDescriptor.cs
- PropertyAccessVisitor.cs
- NetCodeGroup.cs
- MouseButtonEventArgs.cs
- TextTreeInsertUndoUnit.cs