Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Framework / System / Windows / Controls / ViewBase.cs / 1 / 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.
//----------------------------------------------------------------------------
//
// 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
- CleanUpVirtualizedItemEventArgs.cs
- Converter.cs
- WebPartAuthorizationEventArgs.cs
- WeakRefEnumerator.cs
- OutputCacheProfileCollection.cs
- BitmapEffect.cs
- updateconfighost.cs
- DoWhileDesigner.xaml.cs
- CellIdBoolean.cs
- BasicExpressionVisitor.cs
- HttpSessionStateWrapper.cs
- XmlSubtreeReader.cs
- filewebrequest.cs
- ResourcesBuildProvider.cs
- Regex.cs
- StrokeFIndices.cs
- IDataContractSurrogate.cs
- NavigationPropertyEmitter.cs
- X509DefaultServiceCertificateElement.cs
- ReadContentAsBinaryHelper.cs
- VisualStateChangedEventArgs.cs
- RuntimeCompatibilityAttribute.cs
- TreeViewCancelEvent.cs
- Vector3DAnimationUsingKeyFrames.cs
- WebReferenceOptions.cs
- XmlExtensionFunction.cs
- LocatorPartList.cs
- DBCSCodePageEncoding.cs
- ShowExpandedMultiValueConverter.cs
- base64Transforms.cs
- SecurityStandardsManager.cs
- PerformanceCounterPermissionAttribute.cs
- ProcessHostMapPath.cs
- WeakReadOnlyCollection.cs
- CharacterBufferReference.cs
- TransformerConfigurationWizardBase.cs
- DesignerForm.cs
- ClientUriBehavior.cs
- DBNull.cs
- ColorPalette.cs
- EmptyEnumerable.cs
- Transform3DGroup.cs
- DataGridViewSelectedCellCollection.cs
- KeyValueSerializer.cs
- SemanticResultValue.cs
- IgnoreSectionHandler.cs
- util.cs
- SeekableMessageNavigator.cs
- OleDbConnectionInternal.cs
- PropertyGeneratedEventArgs.cs
- EncoderParameter.cs
- VisualTreeUtils.cs
- FileChangesMonitor.cs
- ProfilePropertyNameValidator.cs
- XmlWrappingWriter.cs
- TimeZone.cs
- CompareValidator.cs
- CodeArrayCreateExpression.cs
- TemplateGroupCollection.cs
- ResourcesChangeInfo.cs
- ApplicationInterop.cs
- TreeWalkHelper.cs
- EmissiveMaterial.cs
- TaskExceptionHolder.cs
- ToolStripDropDownClosedEventArgs.cs
- ServicePointManager.cs
- WebServiceTypeData.cs
- NTAccount.cs
- DataKeyCollection.cs
- Help.cs
- StandardOleMarshalObject.cs
- MapPathBasedVirtualPathProvider.cs
- FloatUtil.cs
- TableCell.cs
- CharConverter.cs
- ToolZone.cs
- WebServiceData.cs
- XmlDocument.cs
- MarshalByRefObject.cs
- WebPartCatalogCloseVerb.cs
- PathBox.cs
- ZipFileInfo.cs
- HttpHandlerActionCollection.cs
- ExecutionContext.cs
- QilIterator.cs
- FileController.cs
- XPathNavigator.cs
- EntityDataSourceContainerNameItem.cs
- DbDataReader.cs
- AuthenticatedStream.cs
- Underline.cs
- RegexRunner.cs
- baseaxisquery.cs
- PrintPreviewControl.cs
- OracleBFile.cs
- ConfigsHelper.cs
- DirectionalLight.cs
- RectKeyFrameCollection.cs
- OleAutBinder.cs
- OrthographicCamera.cs