Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Controls / DataGridItemAttachedStorage.cs / 1305600 / DataGridItemAttachedStorage.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Windows; namespace System.Windows.Controls { ////// Holds all of the information that we need to attach to row items so that we can restore rows when they're devirtualized. /// internal class DataGridItemAttachedStorage { public void SetValue(object item, DependencyProperty property, object value) { var map = EnsureItem(item); map[property] = value; } public bool TryGetValue(object item, DependencyProperty property, out object value) { value = null; Dictionarymap; EnsureItemStorageMap(); if (_itemStorageMap.TryGetValue(item, out map)) { return map.TryGetValue(property, out value); } return false; } public void ClearValue(object item, DependencyProperty property) { Dictionary map; EnsureItemStorageMap(); if (_itemStorageMap.TryGetValue(item, out map)) { map.Remove(property); } } public void ClearItem(object item) { EnsureItemStorageMap(); _itemStorageMap.Remove(item); } public void Clear() { _itemStorageMap = null; } private void EnsureItemStorageMap() { if (_itemStorageMap == null) { _itemStorageMap = new Dictionary
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- remotingproxy.cs
- DataProtectionSecurityStateEncoder.cs
- OverrideMode.cs
- DataGridViewRowDividerDoubleClickEventArgs.cs
- RemoteHelper.cs
- JsonMessageEncoderFactory.cs
- ProtocolsConfiguration.cs
- BitmapEffectGroup.cs
- DbXmlEnabledProviderManifest.cs
- ParsedAttributeCollection.cs
- ExtensibleClassFactory.cs
- WebEncodingValidatorAttribute.cs
- Transform3D.cs
- XmlSerializer.cs
- BulletedListEventArgs.cs
- IISUnsafeMethods.cs
- DataGridViewComboBoxEditingControl.cs
- Descriptor.cs
- FileInfo.cs
- OperationCanceledException.cs
- xdrvalidator.cs
- NavigationPropertyAccessor.cs
- DbInsertCommandTree.cs
- XmlArrayItemAttributes.cs
- PopOutPanel.cs
- NameSpaceExtractor.cs
- RangeValueProviderWrapper.cs
- HandleCollector.cs
- Action.cs
- PagedDataSource.cs
- ResourceManager.cs
- MLangCodePageEncoding.cs
- AlphabeticalEnumConverter.cs
- GradientStop.cs
- RemoteWebConfigurationHostServer.cs
- Selection.cs
- AssemblyCache.cs
- DiscoveryOperationContextExtension.cs
- TextEffectCollection.cs
- AdornerHitTestResult.cs
- FrameworkTemplate.cs
- FloaterParagraph.cs
- XmlUtil.cs
- HtmlObjectListAdapter.cs
- RouteCollection.cs
- UrlMappingsModule.cs
- FixedTextBuilder.cs
- WebEvents.cs
- WebPartVerb.cs
- XPathNavigatorKeyComparer.cs
- WebDisplayNameAttribute.cs
- DrawingBrush.cs
- MetaModel.cs
- PackagePartCollection.cs
- RelationshipSet.cs
- CompModSwitches.cs
- InternalsVisibleToAttribute.cs
- IImplicitResourceProvider.cs
- SqlSupersetValidator.cs
- cookiecontainer.cs
- BitmapDecoder.cs
- FrameworkObject.cs
- DataControlLinkButton.cs
- Dictionary.cs
- MasterPageBuildProvider.cs
- TableRowCollection.cs
- OdbcConnectionString.cs
- ServerValidateEventArgs.cs
- CustomAttributeFormatException.cs
- URLMembershipCondition.cs
- FontCollection.cs
- EntityReference.cs
- XmlAnyElementAttribute.cs
- EntitySetDataBindingList.cs
- validationstate.cs
- CodeDOMProvider.cs
- ClientViaElement.cs
- MDIClient.cs
- BitmapEffectGroup.cs
- TemplateField.cs
- UnknownWrapper.cs
- TextRangeEdit.cs
- RTLAwareMessageBox.cs
- BamlVersionHeader.cs
- OracleConnection.cs
- VBIdentifierTrimConverter.cs
- CodeAccessPermission.cs
- RowTypeElement.cs
- SctClaimSerializer.cs
- serverconfig.cs
- WeakReadOnlyCollection.cs
- ScopelessEnumAttribute.cs
- PropertyPathConverter.cs
- PerformanceCounterPermissionAttribute.cs
- TraceSection.cs
- MSAANativeProvider.cs
- ActivityDesignerAccessibleObject.cs
- AssemblyResolver.cs
- BinaryReader.cs
- ManagementDateTime.cs