Click or drag to resize

Version History

The topics in this section describe the various changes made to Tom's Toolbox over the life time of the project.

Version History
  • 1.0.59.0

    • Add a VirtualizingDoubleClickPanel (same as DoubleClickPanel, but derived from VirtualizingPanel).

  • 1.0.58.0

    • Fix ItemsControlExtensions.DefaultItemCommand: Avoid duplicate executions on nested controls.

  • 1.0.57.0

    • Added R# [CanBeNull] on all unannotated parameters.

  • 1.0.56.0

    • CustomNonClientAreaBehavior: Schedule a redraw after WM_NCACTIVATE; if DWM composition is disabled, DefWindowProc(...WM_NCACTIVATE..) *does* some extra drawing on the window frame.

  • 1.0.55.0

    • Add GetItemContainers extension method for ItemsControl.

    • InPlaceEdit: Support text alignment and begin edit on enter if focused.

    • Add VisualAncestors extension method.

    • Add a validation template for Validar.Fody with DataAnnotations.

    • Added HashCode class.

  • 1.0.54.0

    • Remove reference to JetBrains.ExternalAnnotations.

  • 1.0.53.0

    • Added WPF Styles.

    • Added R# [NotNull] annotations to complement Code Contracts.

  • 1.0.52.0

    • Extend CommandRoutingBehavior to track focus to update the active instance.

  • 1.0.51.0

    • Change resource keys to workaround https://connect.microsoft.com/VisualStudio/feedback/details/2993889/.

    • Remove WeakReference<T> in .Net45.

  • 1.0.50.0

    • ObservableObject: Pass validation context to ValidationAttribute.

  • 1.0.49.0

    • Speed up SelectGroupOnGroupHeaderClickBehavior.

  • 1.0.48.0

    • VisualComposition runtime error handling.

  • 1.0.47.0

    • Add ListBoxSelectAllBehavior.

  • 1.0.46.0

    • CustomNonClientAreaBehavior: Handle SizeToContent.

  • 1.0.45.0

    • Add liveTrackingProperties parameter also to ObservableWhere extension.

    • Use DWM to draw the glass frame in custom windows + minor fixes.

    • Add generic dialog commands to build generic dialogs.

  • 1.0.44.0

    • Support live filtering in ObservableFilteredCollection/ObservableWhere.

  • 1.0.43.0

    • Fix performance issues of the ObservableCompositeCollection indexer.

  • 1.0.42.0

    • Add ImportBehavior.

    • DataTemplate.Role also works with ContentPresenter.

  • 1.0.41.0

    • Refactor visual composition to not require the IComposablePart interface and allow lazy setting of the export provider.

  • 1.0.40.0

    • Extend ObservableObject to enable validation error tracking.

    • Add additional classes.

  • 1.0.39.0

    • ObservableCompositeCollection: Property changed for Count property not always raised.

  • 1.0.38.0

    • Split ObservableObject to have a serializable base class.

    • Focus not set when MultiSelectorExtensions selects single item via SourceSelection_CollectionChanged.

  • 1.0.37.0

    • Fix command routing behavior: Detach does not work if called after unloading.

  • 1.0.36.0

    • Role property should be of type object everywhere.

  • 1.0.35.0

    • Make attributes serializable.

    • Define xmlns prefix.

    • Fix missing parameters in AppDomainHelper.

  • 1.0.34.0

    • Add UnaryOperationConverter and AggregatingMultiValueConverter.

    • Enhance DateTimeSource and UpdatePropertyAction.

    • Fix BinaryOperationConverter for DateTime operations.

  • 1.0.33.0

    • Attributed validation support for ObservableObject.

    • ClipoardHelper: Default to TEXT, as CSV is not Unicode.

    • Enhance all converters (usage, error handling, tracing).

  • 1.0.32.0

    • UpdatePropertyAction: Stop updating the binding when the target has been unloaded.

    • Added: AssemblyExtensions, HighResolutionTimer.

    • Fix ClipboardHelper (broken parsing of quoted strings).

  • 1.0.31.0

    • Clipboard helper: proper handling for a single cell that contains only white space.

  • 1.0.30.0

    • Add clipboard helper to support table data exchange via clipboard.

  • 1.0.29.0

    • Fix raise condition in ThreadWithDispatcher.

    • Visual composition behavior works with free threaded export provider.

    • ItemsControlCompositionBehavior forces the selection of the first element after applying the content if the target is a selector.

  • 1.0.28.0

    • Fix/Rename ObservableFilteredCollection and add ObservableWhere extension.

  • 1.0.27.0

    • Improve ObjectToText converter.

    • Add StringToObject converter.

  • 1.0.26.0

    • Fix typo in CommandRoutingBehavior.IsChecked property.

  • 1.0.25.0

    • Composite commands re-factored.

  • 1.0.24.0

    • Add Logical, Arithmetic, and Composite MultiValueConverters.

  • 1.0.23.0

    • Add KeyboardNavigation helper class.

    • Add BinaryOperationConverter class.

  • 1.0.22.0

    • UpdatePropertiesAction => UpdatePropertyAction, improves usability; add usage sample.

  • 1.0.21.0

    • Extend CommandRoutingBehavior by CommandParameter.

    • Add WindowButtonsBehavior for default button handling.

  • 1.0.20.0

    • Add DataTemplate helper.

    • Add Interactivity style bindings.

    • Add CustomNonClientAreaBehavior class.

    • Add DateTimeSource class.

    • Add DoubleClickPanel class.

    • Add WindowsCommands class.

    • AllowRecomposition in ImportExtension class.

  • 1.0.19.0

    • Improve import error messages.

    • Add composite command handling.

  • 1.0.18.0

    • Add LegacyV2RuntimeActivationPolicy helper.

    • Restructure composition framework, fix export provider locator issues and adapt sample application to use dynamic export provider locator.

    • Add portable version of Core and .Net45 version of Desktop.

  • 1.0.17.0

    • Add Import markup extension.

    • Simplify ComposableContentControl, improve loading behavior.

  • 1.0.16.0

    • Add FrameworkElementBehavior and UpdatePropertiesAction.

    • Fix ComposableContentControl loading behavior.

  • 1.0.15.0

    • Add performant ToArray() for collections.

    • Add HGlobal class for proper handling of unmanaged memory.

  • 1.0.14.0

    • Added optional change callback to ObservableObject.SetProperty.

  • 1.0.13.0

    • Fix alignment problem in SharedWidthHeaderedContentControl.

    • Clean up/improve the sample application.

    • MultiSelectorExtensions - no more updating if items control is about to be unloaded.

  • 1.0.12.0

    • Adapt DependencyObject usage and extensions after fixing CodeContract.

  • 1.0.11.0

    • Add VisualComposition framework.

    • Add TextBoxVisibleWhiteSpaceDecorator.

  • 1.0.10.0

    • Preserve Jetbrains.Annotations attributes.

  • 1.0.9.0

    • Fix a bug in MultiSelectorExtensions.

  • 1.0.8.0

    • Add FilteredObservableCollection, XmlExtensions, and dependency property change tracking.

  • 1.0.7.0

    • Add new features.

  • 1.0.6.0

    • Upgrade JetBrains.Annotations.

    • Add culture info helper extensions.

  • 1.0.5.0

    • Add type converter support and ObservablePropertyChangeTracker.

  • 1.0.4.0

    • Add map control and various behaviors.

  • 1.0.3.0

    • Add controls and converters.

  • 1.0.2.0

    • Simplified non-generic DelegateCommand (risk of recursive calls).

  • 1.0.1.0

    • Fixed NuGet packages: CodeContract libraries were added as reference.

  • 1.0.0.0

    • Initial version.

See Also