Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Documents / ColumnResizeUndoUnit.cs / 1305600 / ColumnResizeUndoUnit.cs
//---------------------------------------------------------------------------- // // File: ColumnResizeUndoUnit.cs // // Description: Undo unit for resizing columns // // History: // 01/27/2005 : GHermann - Created // //--------------------------------------------------------------------------- using MS.Internal.Documents; namespace System.Windows.Documents { internal class ColumnResizeUndoUnit : ParentUndoUnit { #region Constructors internal ColumnResizeUndoUnit(TextPointer textPointerTable, int columnIndex, double[] columnWidths, double resizeAmount) : base("ColumnResize") { _textContainer = textPointerTable.TextContainer; _cpTable = _textContainer.Start.GetOffsetToPosition(textPointerTable); _columnWidths = columnWidths; _columnIndex = columnIndex; _resizeAmount = resizeAmount; } #endregion Constructors #region Public Methods ////// Perform the appropriate action for this unit. If this is a parent undo unit, the /// parent must create an appropriate parent undo unit to contain the redo units. /// public override void Do() { UndoManager undoManager; IParentUndoUnit redo; TextPointer textPointerTable; Table table; undoManager = TopContainer as UndoManager; redo = null; textPointerTable = new TextPointer(_textContainer.Start, _cpTable, LogicalDirection.Forward); table = (Table) textPointerTable.Parent; _columnWidths[_columnIndex] -= _resizeAmount; if(_columnIndex < table.ColumnCount - 1) { _columnWidths[_columnIndex + 1] += _resizeAmount; } if(undoManager != null && undoManager.IsEnabled) { redo = new ColumnResizeUndoUnit(textPointerTable, _columnIndex, _columnWidths, -_resizeAmount); undoManager.Open(redo); } TextRangeEditTables.EnsureTableColumnsAreFixedSize(table, _columnWidths); if(redo != null) { undoManager.Close(redo, UndoCloseAction.Commit); } } #endregion Public Methods #region Private Data private TextContainer _textContainer; private double[] _columnWidths; private int _cpTable; private int _columnIndex; private double _resizeAmount; #endregion Private Data } } // 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
- XmlDataImplementation.cs
- AppSettingsReader.cs
- XsltSettings.cs
- EditCommandColumn.cs
- SqlNotificationEventArgs.cs
- Point3DKeyFrameCollection.cs
- Utils.cs
- OdbcConnectionString.cs
- DetailsViewDesigner.cs
- DBDataPermission.cs
- DoubleStorage.cs
- DataServiceQueryOfT.cs
- XmlAnyAttributeAttribute.cs
- DetailsViewRow.cs
- DataServiceProviderMethods.cs
- MetadataSerializer.cs
- MatrixTransform3D.cs
- InvalidTimeZoneException.cs
- ViewManager.cs
- CornerRadius.cs
- TimeoutValidationAttribute.cs
- ProfessionalColorTable.cs
- XmlComplianceUtil.cs
- HtmlControlDesigner.cs
- SoapServerProtocol.cs
- TabletDeviceInfo.cs
- TimeZone.cs
- AmbientLight.cs
- SignatureGenerator.cs
- PolicyValidationException.cs
- MonitorWrapper.cs
- CodeAccessPermission.cs
- WebMessageEncoderFactory.cs
- RenderContext.cs
- EventLogTraceListener.cs
- BitmapPalettes.cs
- Substitution.cs
- ControlBuilderAttribute.cs
- CommandEventArgs.cs
- DataGridCellEditEndingEventArgs.cs
- IssuedTokenClientBehaviorsElementCollection.cs
- TrackPoint.cs
- DragDrop.cs
- Trace.cs
- FixedTextView.cs
- XmlSchemaSimpleTypeList.cs
- TemplateColumn.cs
- MSHTMLHost.cs
- SelectionPatternIdentifiers.cs
- CodeSubDirectory.cs
- AccessDataSource.cs
- ConfigurationStrings.cs
- PixelFormats.cs
- oledbconnectionstring.cs
- EpmContentSerializerBase.cs
- HttpRuntimeSection.cs
- FileDialogCustomPlace.cs
- Debug.cs
- TextFormattingConverter.cs
- EntityStoreSchemaGenerator.cs
- DataTablePropertyDescriptor.cs
- GridItemProviderWrapper.cs
- GorillaCodec.cs
- CompareInfo.cs
- BaseCollection.cs
- BoundingRectTracker.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- ErrorProvider.cs
- MasterPageCodeDomTreeGenerator.cs
- XhtmlBasicValidationSummaryAdapter.cs
- LogicalCallContext.cs
- SimplePropertyEntry.cs
- WebPartManagerDesigner.cs
- Point4D.cs
- Animatable.cs
- EventListenerClientSide.cs
- ByteFacetDescriptionElement.cs
- PathFigureCollectionValueSerializer.cs
- ControlPager.cs
- SystemException.cs
- ToolStripKeyboardHandlingService.cs
- XmlQuerySequence.cs
- XmlNamespaceManager.cs
- CustomBindingCollectionElement.cs
- DrawingVisual.cs
- FileDocument.cs
- tooltip.cs
- RegexCompilationInfo.cs
- CultureInfoConverter.cs
- Axis.cs
- Argument.cs
- SqlBuilder.cs
- SmiConnection.cs
- CacheVirtualItemsEvent.cs
- ActivityTypeCodeDomSerializer.cs
- TemplateComponentConnector.cs
- GridViewCommandEventArgs.cs
- GradientStop.cs
- RepeatBehavior.cs
- Soap.cs