{"record":{"id":"3411b213c2f5a2b0","repo":"HandyOrg/HandyControl","slug":"button","errorCode":null,"errorMessage":"button","messagePattern":"button","errorType":"exception","errorClass":"InvalidEnumArgumentException","httpStatus":null,"severity":"error","filePath":"src/Shared/HandyControl_Shared/Controls/Window/MessageBox.cs","lineNumber":482,"sourceCode":"            SystemSounds.Asterisk.Play();\n            messageBox.ShowDialog();\n        }));\n\n        return messageBox._messageBoxResult;\n    }\n\n    private static MessageBox CreateMessageBox(\n        System.Windows.Window owner,\n        string messageBoxText,\n        string caption,\n        MessageBoxButton button,\n        MessageBoxImage icon,\n        MessageBoxResult defaultResult\n    )\n    {\n        if (!IsValidMessageBoxButton(button))\n        {\n            throw new InvalidEnumArgumentException(nameof(button), (int) button, typeof(MessageBoxButton));\n        }\n\n        if (!IsValidMessageBoxImage(icon))\n        {\n            throw new InvalidEnumArgumentException(nameof(icon), (int) icon, typeof(MessageBoxImage));\n        }\n\n        if (!IsValidMessageBoxResult(defaultResult))\n        {\n            throw new InvalidEnumArgumentException(nameof(defaultResult), (int) defaultResult,\n                typeof(MessageBoxResult));\n        }\n\n        var ownerWindow = owner ?? WindowHelper.GetActiveWindow();\n        var ownerIsNull = ownerWindow is null;\n\n        return new MessageBox\n        {","sourceCodeStart":464,"sourceCodeEnd":500,"githubUrl":"https://github.com/HandyOrg/HandyControl/blob/2c0875ebd67326e0c67282967e3e809c69282fee/src/Shared/HandyControl_Shared/Controls/Window/MessageBox.cs#L464-L500","documentation":"Validation helper in MessageBox.CreateMessageBox: throws InvalidEnumArgumentException for 'button' when the MessageBoxButton value passed to Show/CreateMessageBox is not one of the defined members (OK, OKCancel, YesNo, YesNoCancel). It fires when callers pass an undefined/cast enum value.","triggerScenarios":"Thrown at src/Shared/HandyControl_Shared/Controls/Window/MessageBox.cs:482 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Pass only defined MessageBoxButton values from the public Show/Success/Info/Warning/Error/Fatal/Ask entry points","Constrain API surface so callers cannot supply arbitrary enum integers","Add unit tests enumerating all valid MessageBoxButton members"],"exampleFix":null,"handlingStrategy":"validation","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"}