MahApps.Metro v2.0.0 Release Notes

Release Date: 2020-05-24 // almost 4 years ago
  • 🚀 As part of this release we had 894 commits which resulted in 298 issues being closed.

    💥 Breaking Changes

    • #3808 Fix RangeSlider Upper/Lower value coercion and value changed events
    • #3796 (GH-3587) Last changes to Styles, Themes and Templates
    • #3771 Switching to ThemeManager from ControlzEx
    • #3756 UWP like ToggleSwitch
    • #3753 Remove old ToggleSwitch and replace with UWP like ToggleSwitch
    • #3747 Subsequent changes to Brushes and Colors (#3552)
    • #3743 Improve ToolbarButtonStyle
    • #3724 Adding all target frameworks for showcase and tests
    • #3723 Changing blue color scheme to blue
    • #3697 Moved attached properties related to Header under HeaderedControlHelper
    • #3689 Publish explicit WindowCommand controls styles
    • #3682 Share watermark text message storyboards
    • #3679 Fix padding for input controls
    • #3678 Handle NumericUpDown percentage StringFormat correctly
    • #3675 Fix SplitButton contents disappearing on subsequent clicks
    • #3672 Improve DataGrid column styling
    • #3666 Fix theme based styling for WindowCommands and WindowButtonCommands
    • #3649 Updates MA.M font namespaces to be more uniform
    • #3636 Rename GroupBoxHelper to HeaderedControlHelper and introduced a new AttachedProperty HeaderBackground
    • #3585 Brush Naming Conventions
    • #3584 Font Naming Convention
    • #3583 Renamed SemiTransparentGrey to SemiTransparentGray
    • #3575 Themes.xaml --> Sould it be Gray or Grey?
    • #3560 (GH-2384) Subsequent change after #3552 Update colors names
    • #3557 (GH-2384) Subsequent changes after #3552 Update resource names
    • #3552 [GH-2384] Update resource names
    • #3514 Use TabControlEx from ControlzEx as base class for BaseMetroTabControl
    • #3511 Change window commands overlay behavior after title bar changes (GH-3503)
    • #3503 Improvement for title bar and window commands
    • #3483 (GH-3040) Fix grouping virtualization for DataGrid (ItemsControls)
    • #3480 Fix for typo behaviours (which should be behaviors)
    • #3440 Add DataTemplates for range slider auto tool tip values
    • #3416 Change Dialog Button Styles
    • #3402 Use Microsoft.Xaml.Behaviors.Wpf instead the System.Windows.Interactivity
    • #3400 Use Microsoft.Xaml.Behaviors.Wpf instead the System.Windows.Interactivity
    • #3396 Remove obsolete Styles and Templates
    • #3395 Remove obsolete Styles and Templates
    • #3350 Read available themes from assembly
    • #3339 StrongName signed assembly? Hey, it's 2018...
    • #3334 Use ControlzEx v4.0 WindowChromeBehavior and GlowWindowBehavior
    • #3324 HamburgerMenu changes
    • #3317 Drop .NET40
    • #3310 Styling of buttons within a BaseMetroDialog should be facilitated
    • #3307 ListView default border only on top
    • #3296 Using XamlColorSchemeGenerator to generate themes and merging AppTheme and Accent to Theme
    • #3292 MahApps.Metro.Demo Build issue
    • #3254 (GH-2763) DateTime instead TimeSpan for DateTimePicker/TimePicker
    • #3251 (GH-2289) Rename TitlebarHeight to TitleBarHeight
    • #3247 Remove obsolete marked code like properties and classes
    • #3136 Checkbox colors on dark theme arent good
    • #3041 Should we drop the .Net 4 support?
    • #3040 DataGrid virtualization broken when grouping activated
    • #2989 DemoNET40 Crashed in windows 7 with .net framework 4.0
    • #2784 Use DataTemplate in RangeSlider instead of a Converter (AutoToolTipContentTemplate)
    • #2763 [Breaking change] DateTimePicker/TimePicker now using DateTime?
    • #2384 MahApps.Metro consistent style and template names/keys
    • #2289 Rename TitlebarHeight to TitleBarHeight

    🐛 Bugs

    • #3807 Dynamic flyouts are not shown when animated
    • #3803 Expander with a nested expander
    • #3799 Calendar doesn't show inactive days
    • #3798 Range Slider Upper/Lower value coercion
    • #3779 Error on ThemeManager.Current.DetectTheme
    • #3770 MahApps 2.0 ToggleSwitch and Coded UI Missing InOn/IsChecked State Property
    • #3765 TabControl is always the last one to receive focus when using Tab key navigation
    • #3757 WindowCommands does not pass focus to the next control on tab-key
    • #3746 DateTimePicker changes date to 1/1/0001 when selecting time first
    • #3741 Unable to change Style of ToolbarButton
    • #3738 metrowindow topmost property binding issue
    • #3720 When using TiltBehavior, color and Theme change does not work
    • #3713 Element Overlapping With Window TitleBar Unclickable In TitleBar Area
    • #3708 DataContext is not passed to UIElement in CustomDialog.DialogTop
    • #3702 Error: Could not find an installer for the 'dotnet' scheme.
    • #3690 Coded UI Testing Not Working with Multiple Toggle Switches
    • #3671 Range slider thumbs are gone in .NET core 3
    • #3667 Datagrid TextColumn does not get styled
    • #3665 NumericUpDown decimal places replace with 0 in persian culture
    • #3662 Can not enter negative number with negative exponent number with StringFormat set to "G" or "E"
    • #3660 Animated Single Row Tab Control arrow icon is incorrect when setting flow direction right to left
    • #3655 Invalid window control icons.
    • #3647 Missing Combobox Scrollbars after adding Controls.AnimatedSingleRowTabControl.xaml to App.xaml
    • #3646 RichTextBox is broken in latest source
    • #3623 Dark Themes use LightMinButtonStyle, LightMaxButtonStyle and LightCloseButtonStyle for WindowButtonCommands
    • #3605 HamburgerMenu: Previous view controls can still be clicked.
    • #3603 Custom Dialog ignoring Accent color
    • #3599 WindowButtonCommands Foreground Brush should be always OverrideDefaultWindowCommandsBrush
    • #3598 The type of OverrideDefaultWindowCommandsBrush should be Brush rather then SolidColorBrush
    • #3596 Creating a MetroWindow in a different thread is not possible again
    • #3592 HamburgerMenu - HamburgerVisibility "Collapsed" statement doesn't seem to work properly
    • #3590 XamlColorSchemeGenerator.exe exited with code 3
    • #3589 Various errors building latest commit on develop
    • #3547 DataGridNumericUpDownColumn doesn't has a TextAlignment
    • #3544 Application.Current: Missing Null check
    • #3538 In full-screen mode, the dialog window pops out on 2 monitor
    • #3533 SplitView Pane not shown
    • #3528 Why is ignore file line 264 end with .exe?
    • #3525 Recent Alpha breaks embedded HamburgerMenu
    • #3513 SplitButton contents disappearing on subsequent clicks
    • #3506 ShowTitleBar can not fill all screen
    • #3494 HandleUserPreferenceChanged should handle ArgumentNullException
    • #3478 Splitview Animation
    • #3473 Minimize button in system menu still appear
    • #3471 Windows does not show GlowBrush on Resize="NoResize"
    • #3470 DataGridNumericUpDownColumn - Vertical alignment
    • #3469 SaveWindowPosition
    • #3458 ToggleSwitch and ToggleSwitchButton works differently depending whether user clicked on it or dragged it
    • #3455 DateTimePicker System.IndexOutOfRangeException
    • #3436 HamburgerMenu ItemInvoked doesn't fire automatically
    • #3430 Hamburger menu selected index binding problem
    • #3420 NumericUpDown Undo/Redo Value-Binding not updated
    • #3412 BaseMetroDialog DialogBottom: CommandBinding doesn't work
    • #3408 In InputDialog,The button is partially invisible.
    • #3406 Custom ContextMenu on NumericUpDown will not show on text input
    • #3391 ItemContainerStyleSelector on ComboBox does not work with MahApps
    • #3379 ShowProgressAsync extends autosized window content
    • #3377 NumericUpDown SnapToMultipleOfInterval property does not work with decimal increments
    • #3376 NumericUpDown StringFormat doesn't handle percentages correctly.
    • #3374 [DateTimePicker] - Focus and BorderBrush
    • #3367 HamburgerMenu doesn't handle DataContext inheritance for Menu items
    • #3365 Wrong foreground/text color with dark theme under frame
    • #3360 Slider Value exceeds Minimum and Maximum bounds on MouseWheel
    • #3356 Validation popup is shown in the wrong place when control is inside ScrollViewer
    • #3349 ToggleButton IsEnable=false is not working.
    • #3345 NumericUpDown for values less than 1
    • #3342 TextBoxHelper.SelectAllOnFocus does not work for every mouse click
    • #3340 Build fail when running the demo application "MahApps.Metro.Demo" - Could not load file or assembly ControlzEx
    • #3335 NumericInputMode for DataGridNumericUpDownColumn
    • #3333 TimePicker
    • #3332 TransitioningContentControl defines a CornerRadius of 2 inside style
    • #3329 Windows 10 Maximize icon is slightly broken on high res displays
    • #3323 CloseTabItemAction works only with MetroTabControl
    • #3313 VS 15.8.1 update causes "Package is not compatible"
    • #3308 TabItem HeaderFontSize change leads to freeze
    • #3301 Arithmetic operation resulted in an overflow.
    • #3293 IsEnabled does not work properly on HamburgerMenuItem
    • #3291 metro window keeps glow on top of owned window on restored
    • #3288 Hide() method on window with GlowBrush applied leaves behind outline of artifact on screen
    • #3286 DateTimePicker: Calendar.SelectedDate not always updated and consistent
    • #3284 Gap between menu items and hamburger icon
    • #3280 NumericUpDown doesn't handle percentages correctly
    • #3275 TransitioningContentControl vs. ContentControl
    • #3266 Add InterceptMouseWheel to DataGridNumericUpDownColumn
    • #3265 MetroDialogSettings is not settable within a style
    • #3262 DropDownButton/SplitButton mouse over still works despite CanExecute of a Command returns false
    • #3257 ScrollBar-Buttons of AnimatedSingleRowTabControl possibly too small
    • #3241 Setting a HamburgerMenu.Content is giving a nullexception error
    • #3239 Customising HamburgerMenu
    • #3236 DataGrid with groupstyle shows errors
    • #3224 NumericUpDown ignores value change with stringformat if only the number is selected
    • #3217 NumericUpDown Parses Decimal Value Incorrectly
    • #3216 1px to the left of the LeftWindowCommands
    • #3211 Different Header height in DataGrid without columns
    • #3194 WindowTitleBrush set in WindowBackgroundBrush in BaseLight theme problem
    • #3189 NumericUpDown Input Issues
    • #3108 Taskbar shown when child window closed when IgnoreTaskbarOnMaximize=true
    • #2820 MahApps.Metro's borderlesswindowbehavior does not work with stickywindows.
    • #2762 ToggleSwitch - commands triggered wrongly when grid is virtualized
    • #2706 MetroWindow GlowBrush more blur in 1.3.0
    • #2398 System.TypeLoadException with SpellCheck.IsEnabledProperty
    • #2334 DateTimePicker does not pick the Validation ErrorTemplate
    • #2183 Textbox validator tooltip and scrollviewer
    • #2093 Change the Validation Error Position
    • #1823 Cannot fully programatically maximize window.

    🐛 Bug Fixs

    • #3805 Add DataGrid GroupStyle and fix grouping errors
    • #3804 Fixed Validation Tooltip that never shows up.
    • #3794 (GH-3356, GH-2093) Fix validation popup position after scrolling inside a ScrollViewer
    • #3788 Fix for renamed options property in RuntimeThemeGenerator
    • #3775 (GH-3746) Fix Date and Time selection and other improvements for DateTimePicker
    • #3739 Fix not updating child when using TiltBehavior, after changing accent or theme
    • #3704 Allow using the DropDownButton without a dropdown menu
    • #3703 Fix Cake build error
    • #3695 Improved external dialog to no longer extend onto other monitors
    • #3688 Add CheckMark for VS MenuItem
    • #3650 Subsequent changes after GH-3552
    • #3648 (GH-3646) Fix broken RichTextBox
    • #3645 Fix issue with P, % and ‰ used in StringFormat outside of the format item
    • #3610 (GH-3349) Fix disable content of ToggleButton & Button when using circle style
    • #3597 Fix creating a MetroWindow in a different thread
    • #3593 (GH-3592) Fix HamburgerVisibility "Collapsed" state
    • #3591 (GH-3590) Ensure that there is a backslash between nuget path and tool folder
    • #3555 Add TextAlignment to DataGridNumericUpDownColumn
    • #3546 [GH-3544] Add null check for Application.Current
    • #3536 Preventing potential re-entrancy issues by delaying confirmation
    • #3509 Support to align the radio checkbox in RadioButton
    • #3461 Always update thumb position after drag
    • #3456 Fix for DateTimePicker System.IndexOutOfRangeException #3455
    • #3444 Fix for HamburgerMenu item selection
    • #3413 Fix for: 1px to the left of the LeftWindowCommands
    • #3372 Fixing light theme setting detection
    • #3348 Fix dependencies for alpha v2.0
    • #3322 (GH-3275) Fix TransitioningContentControl vs. ContentControl
    • #3319 (GH-3308) Fix TabItem HeaderFontSize change leads to freeze
    • #3309 Fix HamburgerMenu IsEnabled false by default
    • #2822 Resolved #2820

    🔋 Features

    • #3793 Resizeable SplitViewPane
    • #3790 Added a way to use DataTemplate in BadgedControl
    • #3785 (GH-3783) Add OnCommand and OffCommand to ToggleSwitch
    • #3782 Add IsVisible property to HambugerMenuItemBase
    • #3736 Add RadioButton Windows 10 Style
    • #3717 Introduce new attached property ControlsHelper.RecognizesAccessKey
    • #3712 Add new attached property TreeViewItemHelper.ToggleButtonStyle
    • #3709 Add TargetFramework .NET Core 3.1
    • #3706 Use ContentControlEx at Labels Template to enable ContentCharacterCasing
    • #3696 DatePicker enhancements
    • #3692 Add new HamburgerMenuHeaderItem
    • #3691 Add helper for multi selected binding for Listbox/Multiselector controls
    • #3683 Add explicit WindowCommand styles for Button/ToggleButton
    • #3664 Add an OverlayBrush to the SplitView
    • #3613 Add a Style for the GridSplitter-Control
    • #3550 Add delegate to customize external dialog window
    • #3540 Added a Trigger to MouseOver Property of ValidationMessage
    • #3534 CheckBox Windows 10 Style
    • #3526 NumericUpDown: Add a property to control changing value with key Enter
    • #3524 Tab Control Underline Position
    • #3519 (GH-3504) Add initial remember checkbox checked
    • #3518 (GH-3484) Allow set Dialogs inner content Column GridLength
    • #3517 (GH-3252) Close dialogs with Alt+F4
    • #3491 (GH-3434) Add new HamburgerMenuSeparatorItem for HamburgerMenu
    • #3490 (GH-3457) Allow cancelling the item click for HamburgerMenu items
    • #3487 (GH-3477) Add new attached property FocusBorderThickness
    • #3486 Expose more dependency properties for NumericUpDown control at DataGridNumericUpDownColumn
    • #3485 (GH-3470) Fix for: DataGridNumericUpDownColumn - Vertical alignment
    • #3482 (GH-3453) Add new property ShowSystemMenu
    • #3475 Provide event for hamburger button click
    • #3441 ScrollViewer end of scroll command
    • #3429 Added NaviButtonsPosition Inside/Outside choices
    • #3428 Added more choices for positioning buttons on NumericUpDown control
    • #3425 RichTextBox with ClearTextButton and Watermark
    • #3405 VS style demo addition
    • #3370 Add dotnet core 3.0 support
    • #3330 TabControl, TabItem enhancement
    • #3256 [3215] NumericUpDown - Hexdecimal input mode
    • #3048 Tab Control Underline Position
    • #2277 Create an accent resource dictionary dynamically

    🔋 Feature Requests

    • #3789 BadgedControl should implement a ContentTemplate
    • #3783 CheckedCommand and UnCheckedCommand Missing in 2.0.0-Alpha0748
    • #3768 Toggling visibility on hamburger menu
    • #3763 Can SplitView have a GridSplitter or similar so that user can resize the left and right parts?
    • #3758 Hamburgermenu Styles not included with MahApps?
    • #3725 Add RadioButton Windows 10 Style
    • #3715 Header Text with underscore not working
    • #3699 ControlsHelper.ContentCharacterCasing not working for Label
    • #3681 Add explicit WindowCommand styles for Button/ToggleButton
    • #3661 SplitView overriding LightDismissLayer to set opacity and color
    • #3656 Clear Button in DatePicker
    • #3616 .NET Core 3.0
    • #3612 Add a Style for GridSplitter
    • #3587 Styles vs Themes Namespaces
    • #3539 Validation Error only visible if control has the focus
    • #3531 netcoreapp3.0-preview6 support
    • #3504 Add InitialShouldRemember Property to LoginDialogSettings
    • #3484 Ability to set the gutter on CustomDialog
    • #3477 Removing black border from button
    • #3457 HamburgerMenu ItemClick how cancel click?
    • #3453 How to disable System Menu On Left Click at the Icon of a MetroWindow
    • #3447 How can I use a Menu in the window's titlebar ?
    • #3434 HamburgerMenu Separator
    • #3426 DateTimePicker - two-digit number in input textbox
    • #3394 Introduce a property to change the overlay brush for modal Flyouts
    • #3261 BadgeControl does not respect size properties
    • #3252 Close Dialog with Alt + F4
    • #3215 [Feature request] NumericUpDown - Hexdecimal input mode
    • #2845 RichTextBox with ClearTextButton and Watermark
    • #2615 Attached property, call command when reaching end of scroll
    • #2560 SplitButton and DropDownButton WindowCommand styles
    • #2193 The TextBoxHelper.ClearTextButton does not work on DatePicker
    • #2163 DWM Colored Theme/Accent
    • #1936 Title bar button should overlap WindowCommands
    • #1815 Drop shadow is not blinking after focus lost for modal dialogs

    👌 Improvements

    • #3685 Improve NumericUpDown example
    • #3572 Improve check for RD "equality"
    • #3523 Wraped the demo pages in a scrollviewer for a better user expierience
    • #3521 Demo App should have a scrollviewer around the sample pages

    Hacktoberfest

    • #3637 Added AttachedProperty CornerRadius to all Buttons (optional)
    • #3634 Setting the Background on a HeaderedControl applies only to the Header
    • #3633 Rename GroupBoxHelper as it supports also Expander
    • #3631 More CornerRadius usage
    • #3629 Use attached property CornerRadius for GroupBox control
    • #3628 Use attached property CornerRadius for Expander control
    • #3627 Use CornerRadius for some controls
    • #3626 Add a hidden state for TransitioningContentControl
    • #3625 Add the ability to control button font size in dialogs via MetroDialogSettings
    • #3624 Fix that makes ContextMenu work with VS theme
    • #3620 TransitioningContentControl: old content is not released
    • #3619 HamburgerMenu: Allow using own items together with the new HamburgerMenuItemStyleSelector
    • #3582 PasswordBox Corner Radius
    • #3299 Cornerradius for AccentedSquareButtonStyle?
    • #2864 Visual Studio Theme Context Menu

    Where to get it

    🚀 You can download this release from MahApps.Metro