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
- XsltConvert.cs
- HttpResponseHeader.cs
- ToolStripArrowRenderEventArgs.cs
- PathSegmentCollection.cs
- ContextActivityUtils.cs
- MimeMultiPart.cs
- MessageFormatterConverter.cs
- DeclaredTypeElement.cs
- ImageCodecInfoPrivate.cs
- DataSet.cs
- SoapAttributeOverrides.cs
- OpenFileDialog.cs
- PartialCachingControl.cs
- ConcurrencyMode.cs
- FontSourceCollection.cs
- EmptyStringExpandableObjectConverter.cs
- AppSettingsSection.cs
- FormView.cs
- DataServiceClientException.cs
- ControlIdConverter.cs
- UserControlAutomationPeer.cs
- TextBox.cs
- ImmutableCollection.cs
- IntSecurity.cs
- ValidationErrorInfo.cs
- ParentQuery.cs
- invalidudtexception.cs
- SafeHGlobalHandleCritical.cs
- DebuggerAttributes.cs
- ProtectedUri.cs
- RawStylusInput.cs
- EmptyEnumerable.cs
- CachedTypeface.cs
- RuleSettingsCollection.cs
- EndPoint.cs
- TableRowCollection.cs
- PenContexts.cs
- Missing.cs
- EntityDataSourceViewSchema.cs
- RegexEditorDialog.cs
- DescendentsWalker.cs
- bidPrivateBase.cs
- TextEffectResolver.cs
- DummyDataSource.cs
- GrammarBuilderBase.cs
- MaterializeFromAtom.cs
- DBBindings.cs
- Sorting.cs
- RenderContext.cs
- ChannelHandler.cs
- UriTemplateQueryValue.cs
- VectorAnimationBase.cs
- RenderingEventArgs.cs
- login.cs
- XmlWrappingWriter.cs
- ValuePattern.cs
- HttpModuleAction.cs
- EdmType.cs
- OciHandle.cs
- ProfileSection.cs
- PermissionToken.cs
- ClientRolePrincipal.cs
- ScriptingAuthenticationServiceSection.cs
- StringExpressionSet.cs
- XPathNavigatorReader.cs
- PersonalizationAdministration.cs
- ExpressionParser.cs
- StorageEntitySetMapping.cs
- HostedTcpTransportManager.cs
- MulticastOption.cs
- TraceContext.cs
- EmptyControlCollection.cs
- FrameworkPropertyMetadata.cs
- DEREncoding.cs
- SrgsElementFactory.cs
- ControlDesigner.cs
- DataColumn.cs
- SoapReflectionImporter.cs
- securitycriticaldataClass.cs
- MimeReturn.cs
- PersonalizationStateQuery.cs
- ClientRequest.cs
- ActivityExecutionContext.cs
- Point4D.cs
- BamlResourceSerializer.cs
- WebControl.cs
- NumericUpDownAccelerationCollection.cs
- DynamicRendererThreadManager.cs
- WebServiceTypeData.cs
- DbMetaDataColumnNames.cs
- WindowsFormsDesignerOptionService.cs
- IItemProperties.cs
- DataGridViewRowHeaderCell.cs
- PersonalizablePropertyEntry.cs
- DataGridViewComboBoxCell.cs
- ToolStripComboBox.cs
- DataColumnMapping.cs
- ColumnClickEvent.cs
- NumberFunctions.cs
- Choices.cs