برنامه نویسی Desktop با WPF - سطح 1

مشخصات این دوره:

عنوان ترم جاری: تیر ماه (1)
مدرس: مهدی کرامتی
تاریخ شروع دوره: چهارشنبه 7 تیر 1396
روز برگزاری: چهارشنبه
ساعت: 17:00 تا 20:00
طول مدت دوره: 30 ساعت (10 هفته متوالی)
شهریه: 800,000 تومان
 

خلاصه

WPF یک زیر سیستم گرافیگی مبتنی بر Vector می باشد که برای ایجاد رابط کاربری در برنامه های Desktop به کار می رود. WPF به دلیل Vector-Based بودن مکانیسم درونی اش می تواند سایز کامپوننت ها را بنا بر نیاز به هر ابعادی تغییر دهد، بدون اینکه در پیکسل ها و شکل ظاهری کنترل ها هیچ گونه تغییری احساس شود.

ممکن است برای شما این سوال پیش بیاید که با وجود Windows Forms چه نیازی به استفاده از WPF هست. اگر شما هم چنین سوالی داشته اید دلایل زیر را مطالعه کنید:

  1. در WPF امکان جداسازی رابط کاربری از کد برنامه به صورت موثر وجود دارد
  2. امکان Story Boarding برای ایجاد انمیشن به صورت Built-in در WPF وجود دارد
  3. اتصال به منابع داده (Data-Binding) در WPF بسیار پیشرفته تر و بهتر از Windows Forms شده است
  4. امکان کار با داده های حجیم در WPF به دلیل وجود مکانیسم "User Interface Visualization" به صورت Buit-in وجود دارد
  5. در WPF امکان استفاده از قالب برای داده ها و کنترل ها وجود دارد و با استفاده از آن می توان بر اساس Data Model رابط کاربری را مدل سازی کرد
  6. در WPF امکان استفاده از گرافیک 3 بعدی وجود دارد که توانایی ایجاد رابط های کاربری منحصر به فرد را به شما می دهد
  7. WPF امکان استفاده از انواع رسانه ها از جمله  ویدئو، گرافیک 3 بعدی و انیمیشن را در برنام ها به شما می دهد
  8. حتی خارج از ویژوال استودیو نیز می توانید کد رابط کاربری (XAML) را تغییر داده و بنا بر نیاز دستکاری کنید
  9. در WPF امکان استفاده از Business Object ها وجود دارد
  10. WPF به برنامه نویس ها امکان ایجاد برنامه به صورت کاملا تعریفی (Declrative) با استفاده از XAML را می دهد
  11. WPF امکانات موثرتری برای ایجاد کنترل ها و استفاده پذیری مجدد آنها دارد و انعطاف بیشتری در ایجاد کاربری را در اختیار برنامه نویس ها قرار می دهد.

مطالب مهم این دوره

این دوره آموزشی شامل 14 فصل به شرح زیر است:

    1. آشنایی با WPF
    2. آشنایی با XAML
    3. آشنایی با رویه های چینش (Layout)
    4. آشنایی با Property های Dependency
    5. بررسی رویدادهای مسیردهی شده (Routed Events)
    6. آشنایی با کنترل هاو بکار گیری آنها
    7. بررسی Application در WPF
    8. اتصال عناصر (Element Binding)
    9. آشنایی با دستورات (Commands)
    10. آشنایی با Resource ها و کاربرد آنها
    11. آشنایی با Style ها و Behavior ها و کاربرد آنها
    12. آشنایی با Shape ها، Brush ها، و Transform ها و کاربرد آنها
    13. هندسه (Geometry) ها و Drawing ها
    14. جلوه های گرافیکی و Visual ها

جزئیات کامل سرفصل ها فوق را می توانید در انتهای این صفحه مشاهده کنید.

همچنین مباحث تکمیلی این دوره در قالب یک دوره آموزشی جداگانه تحت عنوان "برنامه نویسی Desktop با WPF - سطح 2" ارائه می شود.


پیش نیازها

پیش نیازهای این دوره عبارتند از:


نحوه ثبت نام

برای ثبت نام می توانید مبلغ شهریه را به صورت کامل و یا بخشی از آن (پیش پرداخت) به صورت آنلاین، واریز به حساب بانکی و یا کارت به کارت پرداخت کنید.

کل مبلغ شهریه میبایست در اولین جلسه تشکیل کلاس تسویه شود.

پرداخت آنلاین با کلیه کارتهای بانکی عضو شبکه شتاب و با داشتن رمز دوم کارت، و CVV2 قابل انجام است.

در صورت واریز مبلغ به صورت کارت به کارت (از طریق عابر بانک) یا واریز به حساب بانکی میبایست جزئیات پرداخت را در بخش دوره های ثبت نام شده شما و انتخاب گزینه پرداخت شهریه ثبت کنید، در غیر این صورت پرداخت فوق از شهریه شما کسر نخواهد شد.

پرداخت شهریه به صورت اقساط طی هماهنگی با مسئولین آموزشگاه و با ارائه چک معتبر میسر است.


سرفصل های این دوره به شرح زیر است:

  1. آشنایی با WPF
    • انقلابی در گرافیک ویندوز
      • DirectX: موتور گرافیکی جدید
      • شتاب دهنده گرافیکی و WPF
    • WPF: یک API سطح بالا
    • عدم وابستگی به Resoliton صفحه نمایش
      • واحدهای اندازه گیری در WPF
      • System DPI
      • گرافیک های Vector و Bitmap
    • معماری WPF
      • سلسله مراتب کلاس ها
  2. آشنایی با XAML
    • آشنایی با XAML
      • رابط کاربری گرافیکی پیش از WPF
      • گونه های XAML
      • کامپایل شدن XAML
    • مفاهیم XAML
      • Namespace های XAML
      • کلاس Code-Behind
    • Property ها و Event ها در XAML
      • Property های ساده و Type Converter ها در XAML
      • Property های Complex
      • افزونه های Markup
      • Property های Attached
      • تعریف Element های تو در تو
      • کاراکترهای ویژه و Whitespace ها
      • رویدادها
      • مثال Full Eight Ball
    • استفاده از Type های Namespace های دیگر
    • Load کردن و کامپایل کردن XAML
      • Code-Only
      • Code و XAML کامپایل نشده
      • Code و XAML کامپایل شده
      • XAML Only
  3. آشنایی با رویه های چینش (Layout)
    • آشنایی با Layout در WPF
      • فلسفه Layout در WPF
      • پروسه Layout
      • Layout Container ها
    • چینش ساده با استفاده از StackPanel
      • Property های مربوط به چینش
      • Alignment
      • Margin
      • مینیمون، ماکسیمم، و سایزهای Explicit
      • Border
    • WrapPanel و DockPanel
      • WrapPanel
      • DockPanel
      • تو در تو کردن Layout Container ها
    • Grid
      • چینش بهینه ردیف ها و ستونها
      • Round کردن چینش
      • Span کردن ردیف ها و ستون ها
      • Size Group های به اشتراک گذاشته شده
      • UniformGrid
    • Layout و Canvas  مبتنی بر مختصات
      • Z-Order
      • InkCanvas
    • مثال های Layout
      • یک ستون از تنظیمات
      • Dynamic Content
      • رابط کاربری Modular
  4. آشنایی با Property های Dependency
    • آشنایی با Property های Dependency
      • تعریف کردن یک  Dependency Property
      • رجیستر کردن یک  Dependency Property
      • افزودن یک Property Wrapper
      • WPF چگونه با  Property های Dependency کار می کند
      • Shared Dependency Properties
      • Attached Dependency Properties
    • Property Validation
      • Validation Callback
      • Coercion Callback
  5. بررسی رویدادهای مسیردهی شده (Routed Events)
    • آشنایی با Routed Event ها
      • تعریف کردن، رجیستر کردن، وو Wrap کردن یک Routed Event
      • به اشتراک گذاردن Routed Event ها
      • فرخوانی یک Routed Event ها
      • پاسخ دهی به یک Routed Event ها
    • Event Routing
      • کلاس RoutedEventArgs
      • Bubble کردن رویدادها
      • پاسخ دهی به یک Suppressed Event
      • رویدادهای Attach شده
      • تونل کردن رویدادها
    • رویدادهای WPF
      • رویدادهای Lifetime
      • رویدادهای Input
    • رویدادهای Keyboard
      • پاسخ دهی به یک Key Press
      • Focus
      • به دست آوردن Key State
    • رویدادهای Mouse
      • کلیک های Mouse
      • Capture کردن Mouse
      • Drag-and-Drop
    • MultiTouch
      • Level های پشتیبانی Multitouch
      • Raw Touch
      • دستکاری
      • Inertia
  6. آشنایی با کنترل ها و بکار گیری آنها
    • کلاس Control
      • Brush های Background و Foreground
      • Font ها
      • Cursor های ماوس
    • کنترل های Content
      • پراپرتی Content
      • تراز کردن Content
      • فلسفه Content در WPF
      • Label ها
      • Button ها
      • Tooltip ها
    • Container های تخصصی
      • ScrollViewer
      • GroupBox
      • TabItem
      • Expander
    • کنترل های Text
      • متن چند خطی
      • Spell Checking
      • PasswordBox
    • کنترل های List
      • ListBox
      • ComboBox
    • کنترل های مبتنی بر Range
      • Slider
      • ProgressBar
    • کنترل های تاریخ
  7. بررسی Application در WPF
    • چرخه حیات اپلیکیشن
      • ایجاد یک شیء Application
      • ارث بری از کلاس Application
      • Application Shutdown
      • رویدادهای Application
    • Application Task ها
      • نمایش یک Splash Screen
      • پاسخ دهی به پارامترهای Command Line
      • دسترسی به Application کنونی
      • تعامل بین پنجره ها
      • اپلیکیشن های Single-Instance
    • Assembly Resource ها
      • افزودن Resource ها
      • بازیابی Resource ها
      • کلاس های Resource-Aware
      • Pack URI ها
      • Resource های درون Assembly های دیگر
      • فایل های Content
    • بومی سازی (Localization)
      • ایجاد رابط کاربری قابل بومی سازی
      • آماده کردن یک برنامه برای بومی سازی
      • مدیریت پروسه ترجمه
  8. اتصال عناصر (Element Binding)
    • متصل کردن Element ها به یکدیگر
      • عبارت اتصال (Binding Expression)
      • خطاهای Binding
      • حالت های Binding
      • ایجاد Binding از طریق کد
      • اتصال چندگانه (Multiple Binding)
      • به روز رسانی Binding
      • Delay ها در Binding
    • متصل کردن اشیائی که Element نیستند
      • Source
      • RelativeSource
      • DataContext
  9. آشنایی با دستورات (Commands)
    • آشنایی با Command ها
    • WPF Command Model
      • ICommand Interface
      • RoutedCommand Interface
      • کلاس RoutedCommand
      • کتابخانه Command
    • اجرای Command ها
      • Command Source ها
      • Command Binding ها
      • استفاده از از چند Command Source
      • بهبود دادن Command Text
      • فراخوانی یک Command به صورت مستقیم
      • غیرفعال کردن Command ها
      • کنترل های دارای Built-in Command
    • مطالب پیشرفته در مورد Command ها
      • Custom Command ها
      • استفاده از یک Command در محل های مختلف
      • استفاده از پارامتر در یک Command
      • ردیابی و معکوس کردن Command ها
  10. آشنایی با Resource ها و کاربرد آنها
    • مفاهیم Resource ها
      • Resources Collection
      • سلسه مراتب Resource ها
      • Resource های Static و Dynamic
      • Resource های Non-Shared
      • دسترسی به Resource ها در کد
      • Application Resource ها
      • Resource های سیستمی
    • Dictionary های Resource
      • ایجاد یک Resource Dictionary
      • اشتراک گذاری Resource ها بین Assembly ها
  11. آشنایی با Style ها و Behavior ها و کاربرد آنها
    • مفاهیم Style
      • ایجاد یک شی Style
      • تنظیم پراپرتی ها
      • متصل کردن Event Handler ها
      • لایه های مختلف استایل ها
      • اعمال کردن خودکار Style بر حسب Type
    • Trigger ها
      • یک Trigger ساده
      • یک Event Trigger
    • Behavior ها
      • فعال کردن پشتیبانی کردن از Behavior ها
      • آشنایی با Behavior Model
      • ایجاد یک Behavior
      • استفاده از یک Behavior
      • پشتیانی از Desin-Time Behavior در Blend
  12. آشنایی با Shape ها، Brush ها، و Transform ها و کاربرد آنها
    • آشنایی با Shape ها
      • کلاس های Shape
      • Rectangle و Ellipse
      • سایزها و محل های Shape ها
      • تغییر ابعاد Shape با استفاده از یک ViewBox
      • Line
      • Polyline
      • Polygon
      • Line Cap ها و Line Join ها
      • Dash ها
      • Pixel Snapping
    • Brush ها
      • SolidColorBrush
      • LinearGradientBrush
      • RadialGradientBrush
      • ImageBrush
      • یک ImageBrush موزائیکی
      • VisualBrush
      • BitmapCacheBrush
    • استفاده از Transform ها
      • Transform کردن Shape ها
      • Transform کردن Element ها
    • شفافیت (Transparency)
      • نیمه شفاف کردن یک Element
      • استفاده از Opacity Mask ها
  13. هندسه (Geometry) ها و Drawing ها
    • Path ها و Geometry ها
      • هندسه Rectangle ، Line و Ellipse
      • ترکیب کردن شکل ها با GeometryGroup
      • آمیخته شدن هندسه با CombinedGeometry
      • رسم منحنی ها و خطوط با PathGeometry
      • استفاده از Geometry Mini-Lanaguage
      • Clip کردن با استفاده از هندسه
    • ترسیم (Drawing)
      • نمایش یک Drawwing
      • Export کردن Clip Art
  14. جلوه های گرافیکی و Visual ها
    • Visual ها
      • رسم Visual ها
      • Wrap کردن Visual ها در یک Element
      • تست کردن Hit
      • تست کردن Hit به صورت پیچیده
    • جلوه های گرافیکی
      • BlurEffect
      • DropShadowEffect
      • ShaderEffect
    • کلاس WriteableBitmap
      • ایجاد یک Bitmap
      • نوشتن در یک WriteableBitmap
      • استفاده از Pixel Writing به صورت بهینه
picture
picture

نظر دانشجویان دوره های قبلی
 نظر افرادی که قبلا در این دوره ها شرکت کرده اند  را بدانید.

بهترین ملاک برای قضاوت درباره کیفیت خدمات آموزشی ما نظرات مخاطبینی است که قبلا از این خدمان استفاده کرده اند. ادامه »

picture

تضمین کیفیت
تضمین کیفیت خدمات آموزشی ما موفقیت افرادی است که با ما همراه بوده اند..

Fusce vehicula dignissim ligula. Vestibulum sit amet neque eu neque suscipit consequat quis vel risus. Vestibulum vehicula purus nec dui accumsan fermentum. Read More »

picture

انواع دوره های آموزشی
دوره های آموزشی ما به دو حالت کلی فشرده و طولانی مدت برگزار می شود.

Fusce vehicula dignissim ligula. Vestibulum sit amet neque eu neque suscipit consequat quis vel risus. Vestibulum vehicula purus nec dui accumsan fermentum. Read More »