An advanced WPF Lib With controls and validation and modern features
$ dotnet add package IQD.WpfUIIQD.WpfUI Library – Many Advantages in One Place 🎨⚡
A powerful and modern WPF UI library that provides ready-to-use UserControls, CustomControls, Styles, and Helper Classes for building professional WPF applications with ease.
✨ Features
🎛️ Custom & User Controls – ready-to-use controls for modern UI.
🎨 Modern Styles & Themes – flat, gradient, glow, dark/light mode support.
🔒 Advanced Validation – built-in validation helpers (Email, Phone, Password, etc.).
📊 Smart Visual Feedback – password strength indicator, validation states, icons.
🌍 RTL Support – full support for right-to-left languages (Arabic,etc.).
🧩 MVVM-Friendly – designed with binding and clean separation of logic in mind.
🛠️ Helper Classes – validation and utility classes for common WPF scenarios.
⚡ Lightweight & Extensible – easily customizable for your project’s needs.
📦 Installation
Install the package from NuGet:
dotnet add package IQD.WpfUI
Or via the NuGet Package Manager in Visual Studio:
Install-Package IQD.WpfUI
🚀 Quick Usage
Example of using some controls :
xmlns:local="clr-namespace:IQD.WpfUI;assembly=IQD.WpfUI"
<local:IQD_Button x:Name="IQD" Content="IQD" Click="IQD_Click" Background="Red" Foreground="White" HoverBackground="Black" PressedBackground="Blue" Width="130" Height="35" Margin="0,40,0,0"/>
<local:IQD_ButtonIcone x:Name="IQD" Content="Heloo" IconeData="{StaticResource settings}" >> || >> ImageContent="/Assets/addmenue (2).png" IconeColor="White" IsAnimationEnabled="True" HoverForeground="Yellow" HoverBackground="Red" PressedBackground="Blue"/>
IsRequired="True" to raise an error when the field is empty.IQD_TextBoxValidation x:Name="txtUserName" PlaceholderText="UserName" IsRequired="True" InnerBorderImageData="{StaticResource moon}"> </IQD_TextBoxValidation>
if (txtUserName.HasError)
ModernMessageBox.Show("Please enter a valid username.");
-------------------------------------
🎛️ Available Validation Types
Email – validates email format
Phone – validates phone numbers
StrongPassword – password strength visualization
Numeric – numbers only
Required – ensures field is not empty
…and many more
📘 Documentation
More detailed documentation and examples will be published soon.
For inquiries, contact: abotharhatem@gmail.com
🌍 Project Links
GitHub: Iraqi-programmers
NuGet: (coming soon)
📄 License
This project is licensed under the MIT License
.
------------------------------------
مكتبة IQD_WPF – مميزات عديدة في مكان واحد 🎨⚡
مكتبة قوية وحديثة لـ WPF UI توفر عناصر تحكم جاهزة (UserControls و CustomControls) مع ستايلات وثيمات وأدوات مساعدة لبناء تطبيقات WPF احترافية بسهولة.
✨ المميزات
🎛️ عناصر تحكم مخصصة وجاهزة – كونترولز حديثة قابلة للاستخدام المباشر.
🎨 ستايلات وثيمات عصرية – تدعم الشكل المسطح (Flat)، التدرجات (Gradient)، الإضاءة (Glow)، والوضع الليلي/النهاري.
🔒 نظام تحقق متقدم – دوال جاهزة للتحقق (الإيميل، الهاتف، كلمة المرور … إلخ).
📊 تغذية بصرية ذكية – مؤشر قوة كلمة المرور، حالات التحقق، أيقونات مساعدة.
🌍 دعم اللغات من اليمين لليسار (RTL) – مثل العربية، الكردية، العبرية … إلخ.
🧩 متوافق مع نمط MVVM – مصمم مع دعم الـ Binding وفصل منطق الكود عن الواجهة.
🛠️ كلاسات مساعدة – لتسهيل التحقق والاستخدام المتكرر في مشاريع WPF.
⚡ خفيف وقابل للتخصيص – يمكنك تعديله وتوسيعه بسهولة ليتناسب مع مشروعك.
📦 التثبيت
من خلال NuGet:
dotnet add package IQD.WpfUI
أو من خلال NuGet Package Manager في Visual Studio:
Install-Package IQD.WpfUI
🚀 الاستخدام السريع
مثال على TextBox مع التحقق:
<Window xmlns:iqd="clr-namespace:IQD.Controls;assembly=IQD.WPF">
<iqd:IQD_ValidatedTextBox
ValidationType="Email"
PlaceholderText="أدخل بريدك الإلكتروني"
/>
</Window>
🎛️ أنواع التحقق المتوفرة
Email – التحقق من صيغة البريد الإلكتروني.
Phone – التحقق من أرقام الهاتف.
StrongPassword – التحقق من قوة كلمة المرور.
Numeric – السماح بالأرقام فقط.
Required – التحقق من أن الحقل غير فارغ.
… والعديد من الأنواع الأخرى.
📘 التوثيق
سيتم نشر توثيق أكثر تفصيلاً مع أمثلة قريبًا.
للاستفسار: abotharhatem@gmail.com
🌍 روابط المشروع
GitHub: Iraqi-programmers
NuGet: https://www.nuget.org/packages/IQD.WpfUI/
📄 الترخيص
هذا المشروع مرخّص تحت رخصة MIT License.