Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Controls / ViewBase.cs / 1305600 / ViewBase.cs
//----------------------------------------------------------------------------
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//---------------------------------------------------------------------------
using System.Diagnostics; // Debug
using System.Windows.Automation.Peers; // IViewAutomationPeer
namespace System.Windows.Controls
{
///
/// ViewBase is something that tells the ListView the way to present each
/// entity in the data collection, i.e. the default style key.
///
public abstract class ViewBase : DependencyObject
{
#region Protected Methods
///
/// called when ListView is prepare container for item
///
/// the container
protected internal virtual void PrepareItem(ListViewItem item)
{
}
///
/// called when ListView is clear container for item
///
/// the container
protected internal virtual void ClearItem(ListViewItem item)
{
}
///
/// default style key.
/// ListView will degrate to ListBox if sub-class doesn't override
/// this value.
///
protected internal virtual object DefaultStyleKey
{
get { return typeof(ListBox); }
}
///
/// default container style key
/// The container, ListViewItem, will degrate to ListBoxItem if
/// sub-class doesn't override this value.
///
protected internal virtual object ItemContainerDefaultStyleKey
{
get { return typeof(ListBoxItem); }
}
// Propagate theme changes to contained headers
internal virtual void OnThemeChanged()
{
}
#endregion
#region InheritanceContext
///
/// InheritanceContext
///
internal override DependencyObject InheritanceContext
{
get { return _inheritanceContext; }
}
// Receive a new inheritance context
internal override void AddInheritanceContext(DependencyObject context, DependencyProperty property)
{
if (_inheritanceContext != context)
{
// Pick up the new context
_inheritanceContext = context;
OnInheritanceContextChanged(EventArgs.Empty);
}
}
// Remove an inheritance context
internal override void RemoveInheritanceContext(DependencyObject context, DependencyProperty property)
{
if (_inheritanceContext == context)
{
// clear the context
_inheritanceContext = null;
OnInheritanceContextChanged(EventArgs.Empty);
}
}
// Fields to implement DO's inheritance context
DependencyObject _inheritanceContext;
#endregion InheritanceContext
///
/// called when ListView creates its Automation peer
///
/// listview reference
/// IViewAutomationPeer
/// ListView will use this method to get an automationPeer for a given view
/// and default to the properties/patterns implemented by the view before going to
/// default fall-backs on ListView.
internal protected virtual IViewAutomationPeer GetAutomationPeer(ListView parent)
{
return null;
}
// True, when view is assigned to a ListView.
internal bool IsUsed
{
get { return _isUsed; }
set { _isUsed = value; }
}
private bool _isUsed;
}
}
// 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
- ActivityDesignerLayoutSerializers.cs
- InvokeGenerator.cs
- DatatypeImplementation.cs
- SemaphoreFullException.cs
- TranslateTransform3D.cs
- TextBoxAutomationPeer.cs
- SrgsGrammarCompiler.cs
- ChildChangedEventArgs.cs
- VisualStateGroup.cs
- InternalsVisibleToAttribute.cs
- InterleavedZipPartStream.cs
- HMACSHA384.cs
- SqlException.cs
- StylusShape.cs
- ObjectAssociationEndMapping.cs
- PathSegmentCollection.cs
- Rectangle.cs
- RemoteHelper.cs
- ConfigDefinitionUpdates.cs
- _AutoWebProxyScriptWrapper.cs
- AuthStoreRoleProvider.cs
- DataPagerFieldCollection.cs
- SelectionEditingBehavior.cs
- UIElementAutomationPeer.cs
- SignHashRequest.cs
- DbUpdateCommandTree.cs
- TimersDescriptionAttribute.cs
- CookielessData.cs
- XmlSchemaSequence.cs
- FieldBuilder.cs
- DataGridViewComboBoxEditingControl.cs
- OleDbReferenceCollection.cs
- SimpleWebHandlerParser.cs
- MethodBuilder.cs
- RoutedCommand.cs
- ComponentResourceKeyConverter.cs
- DataObjectEventArgs.cs
- PtsHost.cs
- ManipulationPivot.cs
- COAUTHINFO.cs
- Brush.cs
- DiscoveryDocument.cs
- BrowserCapabilitiesFactory.cs
- PartitionerQueryOperator.cs
- ElementHostPropertyMap.cs
- Parameter.cs
- RemotingConfigParser.cs
- PnrpPermission.cs
- MultipartIdentifier.cs
- TemplateControlBuildProvider.cs
- WebAdminConfigurationHelper.cs
- EdmSchemaAttribute.cs
- DataSourceDescriptorCollection.cs
- SpecialTypeDataContract.cs
- XmlCharCheckingWriter.cs
- TdsEnums.cs
- _AutoWebProxyScriptHelper.cs
- WriteFileContext.cs
- OracleBinary.cs
- CloudCollection.cs
- SoundPlayer.cs
- UnsafeNativeMethods.cs
- SmiConnection.cs
- SvcMapFileLoader.cs
- DbConnectionFactory.cs
- ServiceOperationInvoker.cs
- CodeTypeMemberCollection.cs
- List.cs
- IsolatedStorageSecurityState.cs
- BypassElement.cs
- DeferredElementTreeState.cs
- ChunkedMemoryStream.cs
- ColorInterpolationModeValidation.cs
- IpcChannelHelper.cs
- MasterPageBuildProvider.cs
- DataListItemCollection.cs
- FrameworkRichTextComposition.cs
- AtomServiceDocumentSerializer.cs
- SafeFileMappingHandle.cs
- BindingContext.cs
- EdmTypeAttribute.cs
- WarningException.cs
- StateWorkerRequest.cs
- BitmapEncoder.cs
- DefaultParameterValueAttribute.cs
- SecurityProtocolFactory.cs
- TextEffect.cs
- QilGenerator.cs
- SqlClientFactory.cs
- BinaryReader.cs
- ThreadPool.cs
- ResolveNameEventArgs.cs
- XmlSerializableReader.cs
- DataViewManager.cs
- SqlTrackingQuery.cs
- SequentialActivityDesigner.cs
- DesignerDataTableBase.cs
- UserCancellationException.cs
- ProtocolsConfigurationEntry.cs
- HighlightComponent.cs