{"record":{"id":"7b859e28a4573813","repo":"HandyOrg/HandyControl","slug":"samebuttons","errorCode":null,"errorMessage":"SameButtons","messagePattern":"SameButtons","errorType":"exception","errorClass":"NotSupportedException","httpStatus":null,"severity":"error","filePath":"src/Shared/HandyControl_Shared/Controls/Slider/RangeSlider/RangeTrack.cs","lineNumber":36,"sourceCode":"\n    private RepeatButton _decreaseButton;\n\n    private RangeThumb _thumbStart;\n\n    private RangeThumb _thumbEnd;\n\n    private Visual[] _visualChildren;\n\n    private double Density { get; set; } = double.NaN;\n\n    public RepeatButton DecreaseRepeatButton\n    {\n        get => _decreaseButton;\n        set\n        {\n            if (Equals(_increaseButton, value) || Equals(_centerButton, value))\n            {\n                throw new NotSupportedException(\"SameButtons\");\n            }\n            UpdateComponent(_decreaseButton, value);\n            _decreaseButton = value;\n\n            if (_decreaseButton != null)\n            {\n                CommandManager.InvalidateRequerySuggested(); // Should post an idle queue item to update IsEnabled on button\n            }\n        }\n    }\n\n    public RepeatButton CenterRepeatButton\n    {\n        get => _centerButton;\n        set\n        {\n            if (Equals(_increaseButton, value) || Equals(_decreaseButton, value))\n            {","sourceCodeStart":18,"sourceCodeEnd":54,"githubUrl":"https://github.com/HandyOrg/HandyControl/blob/2c0875ebd67326e0c67282967e3e809c69282fee/src/Shared/HandyControl_Shared/Controls/Slider/RangeSlider/RangeTrack.cs#L18-L54","documentation":"Sentinel guard in RangeTrack's DecreaseRepeatButton setter: assigning a RepeatButton instance that is already used as the increase or center button throws NotSupportedException(\"SameButtons\"). It fires when the same RepeatButton control is assigned to more than one slot of the range slider track.","triggerScenarios":"Thrown at src/Shared/HandyControl_Shared/Controls/Slider/RangeSlider/RangeTrack.cs:36 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Assign a distinct RepeatButton instance to each of DecreaseRepeatButton, IncreaseRepeatButton and CenterButton","If reusing a button is intended, create a new RepeatButton with equivalent properties instead of sharing the instance","Enforce this in XAML/templates by giving each part its own x:Name and binding"],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2c0875ebd67326e0c67282967e3e809c69282fee","analyzedAt":"2026-09-14T14:45:29.754Z","contentChangedAt":"2026-09-14T14:45:29.754Z","schemaVersion":2},"datasetVersion":"2026-09-16T09:17:16.951Z"}