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
- LineInfo.cs
- EncoderReplacementFallback.cs
- FolderLevelBuildProvider.cs
- Rijndael.cs
- TimeoutValidationAttribute.cs
- UnmanagedMemoryStream.cs
- TypeListConverter.cs
- XPathSingletonIterator.cs
- SystemInformation.cs
- ObfuscationAttribute.cs
- GradientStopCollection.cs
- HashStream.cs
- HtmlTableRow.cs
- SecurityTokenValidationException.cs
- MatrixTransform.cs
- PolicyStatement.cs
- DefaultTraceListener.cs
- HashCodeCombiner.cs
- mda.cs
- WebPartEditorCancelVerb.cs
- TypeListConverter.cs
- BaseCollection.cs
- MultiAsyncResult.cs
- SoapSchemaExporter.cs
- COM2PictureConverter.cs
- DataTableMappingCollection.cs
- BufferedGraphics.cs
- XmlCharacterData.cs
- Menu.cs
- EnumBuilder.cs
- SimpleWebHandlerParser.cs
- PopupRootAutomationPeer.cs
- Path.cs
- MemoryRecordBuffer.cs
- TemplateDefinition.cs
- DisplayMemberTemplateSelector.cs
- SQLDoubleStorage.cs
- RegularExpressionValidator.cs
- autovalidator.cs
- MouseCaptureWithinProperty.cs
- ObjectDataSourceMethodEventArgs.cs
- CompiledRegexRunnerFactory.cs
- SafeCryptoKeyHandle.cs
- XmlSchemaCompilationSettings.cs
- KeyValuePair.cs
- MembershipValidatePasswordEventArgs.cs
- FormatException.cs
- ContextProperty.cs
- Merger.cs
- _NtlmClient.cs
- ToolStripSplitButton.cs
- SingleObjectCollection.cs
- WebControl.cs
- ApplicationCommands.cs
- DataGridViewRowCancelEventArgs.cs
- TileBrush.cs
- CharAnimationUsingKeyFrames.cs
- ExpressionEditor.cs
- ListViewItemMouseHoverEvent.cs
- DbMetaDataCollectionNames.cs
- Color.cs
- ClientFormsAuthenticationMembershipProvider.cs
- CheckBoxField.cs
- PiiTraceSource.cs
- ToolbarAUtomationPeer.cs
- ConnectionStringSettingsCollection.cs
- XPathBuilder.cs
- SeekStoryboard.cs
- XmlSchemaImport.cs
- FormViewRow.cs
- BaseValidator.cs
- RegexCaptureCollection.cs
- AccessorTable.cs
- IgnoreFileBuildProvider.cs
- BmpBitmapDecoder.cs
- Color.cs
- OracleRowUpdatingEventArgs.cs
- UserControlBuildProvider.cs
- WinEventHandler.cs
- PageParser.cs
- FolderLevelBuildProvider.cs
- ResourceExpression.cs
- mediaclock.cs
- TagPrefixInfo.cs
- ToolStripContainerActionList.cs
- UrlPropertyAttribute.cs
- StateDesignerConnector.cs
- DesignerLoader.cs
- _NegoStream.cs
- StackOverflowException.cs
- addressfiltermode.cs
- ObjectTag.cs
- WebServiceTypeData.cs
- RemotingSurrogateSelector.cs
- HelpKeywordAttribute.cs
- SizeLimitedCache.cs
- DeviceContexts.cs
- SmtpClient.cs
- WebCodeGenerator.cs
- AxHost.cs