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
- CultureInfoConverter.cs
- StaticDataManager.cs
- AutoResetEvent.cs
- CacheMemory.cs
- NetSectionGroup.cs
- CapabilitiesRule.cs
- GridItemPatternIdentifiers.cs
- CodeLabeledStatement.cs
- EventBuilder.cs
- HMACRIPEMD160.cs
- ToolStripAdornerWindowService.cs
- TransformGroup.cs
- NavigationService.cs
- PostBackOptions.cs
- DeviceContexts.cs
- DataGridViewCellStyleContentChangedEventArgs.cs
- StrongTypingException.cs
- UIElementPropertyUndoUnit.cs
- CancellationTokenSource.cs
- ExceptionWrapper.cs
- MethodBuilderInstantiation.cs
- AdapterSwitches.cs
- BamlBinaryReader.cs
- RuntimeWrappedException.cs
- UnsafeNativeMethods.cs
- ErrorsHelper.cs
- EncodingStreamWrapper.cs
- TraceLog.cs
- Boolean.cs
- BamlRecords.cs
- PropertyMapper.cs
- XmlCharCheckingWriter.cs
- RawContentTypeMapper.cs
- NameValuePermission.cs
- Int32Animation.cs
- SqlServices.cs
- CopyAttributesAction.cs
- MethodAccessException.cs
- LambdaCompiler.Logical.cs
- XmlDictionaryReader.cs
- ListItemCollection.cs
- HWStack.cs
- TypeName.cs
- StorageEntityContainerMapping.cs
- Lasso.cs
- Slider.cs
- StringDictionaryEditor.cs
- SymLanguageType.cs
- MonthChangedEventArgs.cs
- RSAOAEPKeyExchangeDeformatter.cs
- SimpleHandlerBuildProvider.cs
- Pointer.cs
- GridProviderWrapper.cs
- DependencySource.cs
- CellLabel.cs
- ListBox.cs
- Mappings.cs
- _FtpDataStream.cs
- WebServiceData.cs
- DelegateBodyWriter.cs
- EnvironmentPermission.cs
- MsmqDiagnostics.cs
- LinkedResourceCollection.cs
- DataServiceRequestException.cs
- SelectedDatesCollection.cs
- NavigatorInput.cs
- DataBinder.cs
- wmiprovider.cs
- PrintController.cs
- PersonalizableAttribute.cs
- AxisAngleRotation3D.cs
- MobileControl.cs
- CustomAttribute.cs
- X509ServiceCertificateAuthenticationElement.cs
- PackUriHelper.cs
- elementinformation.cs
- ListQueryResults.cs
- PTProvider.cs
- OuterGlowBitmapEffect.cs
- _OverlappedAsyncResult.cs
- Dispatcher.cs
- CssClassPropertyAttribute.cs
- DataGridViewImageCell.cs
- HyperlinkAutomationPeer.cs
- CryptoConfig.cs
- ConfigXmlElement.cs
- EntityCommandDefinition.cs
- ResourceReferenceExpressionConverter.cs
- ListViewVirtualItemsSelectionRangeChangedEvent.cs
- BaseAppDomainProtocolHandler.cs
- AppDomainManager.cs
- CookielessHelper.cs
- WindowsEditBox.cs
- TableColumnCollection.cs
- TextPointer.cs
- IndentedWriter.cs
- DataGridViewSelectedColumnCollection.cs
- IDictionary.cs
- ReadOnlyTernaryTree.cs
- XmlNodeComparer.cs