Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Controls / AlternationConverter.cs / 1305600 / AlternationConverter.cs
//---------------------------------------------------------------------------- // //// Copyright (C) by Microsoft Corporation. All rights reserved. // // // Description: Convert between index and a list of values. // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using System.Globalization; using System.Windows.Data; using System.Windows.Markup; namespace System.Windows.Controls { ////// AlternationConverter is intended to be used by a binding to the /// ItemsControl.AlternationIndex attached property. It converts an integer /// into the corresponding item in Values list. /// [ContentProperty("Values")] public class AlternationConverter : IValueConverter { ////// A list of values. /// public IList Values { get { return _values; } } /// /// Convert an integer to the corresponding value from the Values list. /// public object Convert (object o, Type targetType, object parameter, CultureInfo culture) { if (_values.Count > 0 && o is int) { int index = ((int)o) % _values.Count; if (index < 0) // Adjust for incorrect definition of the %-operator for negative arguments. index += _values.Count; return _values[index]; } return DependencyProperty.UnsetValue; } ////// Convert an object to the index in the Values list at which that object appears. /// If the object is not in the Values list, return -1. /// public object ConvertBack(object o, Type targetType, object parameter, CultureInfo culture) { return _values.IndexOf(o); } List
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SizeF.cs
- HwndSourceParameters.cs
- ClientTargetSection.cs
- ToolStripDropDown.cs
- XamlFigureLengthSerializer.cs
- OleDbTransaction.cs
- DataSourceHelper.cs
- DrawingCollection.cs
- AsyncDataRequest.cs
- PagedDataSource.cs
- HttpContext.cs
- WebPartUtil.cs
- WebEventCodes.cs
- OracleCommand.cs
- ClientScriptManager.cs
- MembershipUser.cs
- ScriptingRoleServiceSection.cs
- HtmlElementCollection.cs
- RoleServiceManager.cs
- ButtonBase.cs
- UTF7Encoding.cs
- CodeIdentifiers.cs
- VarRefManager.cs
- DetailsViewActionList.cs
- ByteKeyFrameCollection.cs
- SemanticAnalyzer.cs
- SafeBitVector32.cs
- ViewValidator.cs
- Utility.cs
- ArrayListCollectionBase.cs
- BitmapSource.cs
- TransformationRules.cs
- SymbolPair.cs
- FixedDocument.cs
- CodeStatementCollection.cs
- SafePEFileHandle.cs
- WebPartCancelEventArgs.cs
- DataGridViewEditingControlShowingEventArgs.cs
- COM2Properties.cs
- ThreadWorkerController.cs
- HashMembershipCondition.cs
- ElementProxy.cs
- ReadOnlyDictionary.cs
- MetadataUtilsSmi.cs
- Int32.cs
- CodeRemoveEventStatement.cs
- MatrixCamera.cs
- ToolStripPanel.cs
- SystemInfo.cs
- GetWinFXPath.cs
- Point3DCollection.cs
- Package.cs
- Label.cs
- MailBnfHelper.cs
- TransactionFilter.cs
- XmlSchemaCollection.cs
- GroupDescription.cs
- IgnoreSection.cs
- ProviderConnectionPointCollection.cs
- CommandValueSerializer.cs
- DbParameterHelper.cs
- WebPartManagerInternals.cs
- InputLanguage.cs
- UrlPath.cs
- SqlError.cs
- PeerNameRegistration.cs
- ErrorFormatter.cs
- DataSet.cs
- UserControl.cs
- SafeFileMappingHandle.cs
- HtmlTableCellCollection.cs
- OleDbFactory.cs
- XamlFilter.cs
- WindowsSysHeader.cs
- ThrowHelper.cs
- DataGridViewRowEventArgs.cs
- EmissiveMaterial.cs
- GradientBrush.cs
- EventWaitHandleSecurity.cs
- RegexWorker.cs
- TrackingStringDictionary.cs
- Brushes.cs
- Dictionary.cs
- DocumentEventArgs.cs
- StyleTypedPropertyAttribute.cs
- TemplatePagerField.cs
- TreeNodeCollection.cs
- FindCriteria.cs
- PriorityQueue.cs
- OutputBuffer.cs
- EntitySetDataBindingList.cs
- EditingCommands.cs
- ParentQuery.cs
- JumpList.cs
- IgnoreSectionHandler.cs
- UnitySerializationHolder.cs
- NetworkAddressChange.cs
- ObjectNotFoundException.cs
- AdRotator.cs
- SelectionBorderGlyph.cs