Modern, animasyonlu ve özelleştirilebilir WinForms uyarıları ve onay pencereleri ✨
A modern, animated, and customizable alert/confirmation library for Windows Forms (.NET Framework 4.8). Create elegant alerts and questions with fade/slide/scale/rainbow/shake animations, custom icons, sounds, auto-close, progress bars, async APIs, and multi-language support (en/tr).
- ✨ Modern, elegant UI
- 🎞️ Multiple animations:
Fade,Slide,Scale,Rainbow,Shake - 🌐 Multi-language: English (
en), Turkish (tr) - 🖼️ Custom icons + 🔊 sound effects
- 📊 ProgressBar support for auto-close
- 🧵 Modal, async, and background modes
- 🎛️ Customizable button styles (Default, Modern, Classic, Rounded, Gradient)
- ⏱️ Auto-close, default button and auto-click for questions
- 🧠 Automatic text defaults based on selected language
- .NET Framework
4.8 - Windows Forms application
NuGet Package Manager Console:
Install-Package ModernNotify
.NET CLI:
dotnet add package ModernNotify
// Modal info alert
DialogResult result = ModernAlert.Show(
"Title",
"Message",
ModernAlert.AlertType.Info
);
// Async success alert
DialogResult res = await ModernAlert.ShowAsync(
"Saved",
"Your changes have been saved.",
ModernAlert.AlertType.Success,
autoCloseMilliseconds: 1500,
animationType: AnimationType.Fade,
progressBarStyle: ProgressBarStyle.Marquee
);
// Fire-and-forget background alert
ModernAlert.ShowBackground(
"Working",
"Processing in the background...",
ModernAlert.AlertType.Info,
autoCloseMilliseconds: 2000
);// Customized alert
DialogResult result = ModernAlert.Show(
"Custom",
"This is a customizable alert",
ModernAlert.AlertType.Info,
autoCloseMilliseconds: 3000,
playSound: true,
customIcon: myIcon,
animationType: AnimationType.Rainbow,
progressBarStyle: ProgressBarStyle.Marquee
);// Basic confirmation (modal)
DialogResult result = ModernQuestion.ShowQuestion(
"Confirmation",
"Are you sure you want to do this?",
AnimationType.Fade,
null,
LanguageOption.en
);
// Async confirmation
DialogResult asyncResult = await ModernQuestion.ShowQuestionAsync(
"Delete",
"Permanently delete this item?",
AnimationType.Rainbow,
null,
LanguageOption.en
);
// Default button with auto-click (modal)
DialogResult timed = ModernQuestion.ShowQuestion(
"Confirm",
"Proceed with the operation?",
AnimationType.Fade,
null,
LanguageOption.en,
ButtonStyle.Modern,
DialogResult.Yes, // default button
5 // auto-click after 5 seconds
);
// Customized question (async)
DialogResult q = await ModernQuestion.ShowQuestionAsync(
"Question",
"Choose wisely",
AnimationType.Scale,
customIcon: myIcon,
language: LanguageOption.tr,
buttonStyle: ButtonStyle.Rounded,
defaultButton: DialogResult.No,
autoClickDelay: 10
);Fade: Smooth fade transition ✨Slide: Slide in/out 👉Scale: Grow/Shrink 🔍Rainbow: Arc movement with drop 🌈Shake: Shake then fade 💥
Infoℹ️: Information (Blue)Success✅: Success (Green)Warning⚠️ : Warning (Yellow)Error❌: Error (Red)
en🇬🇧: Englishtr🇹🇷: Turkish
Blocks: Blocked viewContinuous: Continuous viewMarquee: Scrolling bar view
Default: Standard Windows styleModern: Flat, accent colorsClassic: Classic Windows styleRounded: Rounded cornersGradient: Horizontal gradient fill
DialogResult.Yes: Yes selected by defaultDialogResult.No: No selected by defaultDialogResult.None: No default selected
- When a default button is used,
autoClickDelaymust be greater than0. - Default button can only be
DialogResult.YesorDialogResult.No. - Async APIs do not block the UI thread; animations run smoother.
- Title and message fall back to language-specific defaults when
null. - Button texts update automatically based on the selected language.
- Open
ModernNotify.csprojin Visual Studio (or build with MSBuild) targeting .NET Framework 4.8. - Outputs
ModernNotify.dlland XML docs underbin/Release.
Licensed under the MIT License. See LICENSE for details.