آخرین مقالات

خانه » پروژه دانشجویی » کامپیوتر » دانلود پروژه تکنولوژی WPF

دانلود پروژه تکنولوژی WPF
چکیده ۲
فصل اول :مقدمه ای بر تکنولوژی Windows Presentation Foundation
تکنولوژی­های جدید دات­نت ۸
مشکلات تکنولوژی­های قبل در شخصی­سازی ابزارها ۱۰
درک گرافیک ویندوز ۱۴
Directx موتور گرافیکی جدید ۱۵
درجه­بندی­های WPF 18
عدم وابستگی WPF به رزولوشن ۱۹
معماری WPF 21
ساختار سلسله مراتبی آبجکت­ها در WPF 24
 فصل دوم :زبان XAML
طراحی واسط­های گرافیکی کاربر قبل از WPF 28
کاربردهای مختلف XAML 29
ساختار فایل­های XAML 30
شکل ساده یک سند XAML 33
فضای نام­ها در XAML 35
خواص و رویدادها در XAML 36
کامپایل XAML به فایل های BAML تزریق شونده به اسمبلی ها ۴۲
 فصل سوم :چیدمان طراحی کنترل­ها
ایجاد برنامه­های WPF 45
چیدمان عناصر در WPF 49
کنترل های کانتینر (ContainerControls) 51
مفهوم Content در WPF 53
کنترل Expander 58
 فصل چهارم:نتیجه­گیری
مزایای WPF 61
معایب WPF 64
چشم انداز ۶۵
نتیجه­گیری ۶۶
منابع ۶۷

فهرست شکلها

عنوان صفحه
 فصل اول :مقدمه ای بر تکنولوژی Windows Presentation Foundation
شکل۱-۱)نمونه پیاده سازی یک دستور چهار شرطی در سیستم WF 9
شکل۱-۲ )کنترل منویی ۱۱
شکل۱-۳ )معماری WPF 22
شکل۱-۴ )ساختار سلسله مراتبی آبجکت های مختلف را در تکنولوژی WPF 24
 فصل دوم :زبان XAML
شکل۲-۱)یک نمونه از آبجکت TextBoxکه تعدای خواص آن از جمله رنگی به عنوان پس زمینه و رنگ پیش زمینه و .. تعریف شده است. ۳۷
شکل۲-۲ )در این شکل ظاهر TextBox با تغییر خاصیت BackGround و ForeGround تغییر کرده است. ۳۹
شکل۲-۳)وجود گزینه دیگری با عنوان <New Event Handler> را نشان میدهد که با انتخاب آن می توانید، یک رویداد جدید برای کنترل مورد نظر ایجاد کنید. ۴۱
شکل۲-۴)نحوه تعریف یک رویداد کلیک برای یک Button 41
شکل۲-۵)نحوه رفتن به یک رویداد از قبل تعریف شده ۴۲
 فصل سوم :چیدمان طراحی کنترل­ها
شکل۳-۱) ایجاد یک پروژه WPF 45
شکل۳-۲)نتیجه حاصل ازایجاد یک پروژه WPF Application 47
شکل۳-۳ )نمونه ای از یک عنصر ToolTip 54
شکل۳-۴)سلسله مراتب ارث­بری کنترلهای کانتینر وکنترلهای محتوا ۵۵
شکل۳-۵ )نمایش عکس بعنوان محتوای یک Button 58
 فصل چهارم:نتیجه­گیری
شکل۴-۱) نمای ظاهری یاهو مسنجر جدید ویژه سیستم عامل ویستا ۶۵

چکیده -

به طور کلی برنامه های ویندوزی از دو امکان، توابع User32 و GDI/GDI+ برای ترسیم عناصر گرافیکی استفاده می‌کنند. شرکت مایکروسافت به دلیل محدودیت هایی که در هر یک از دوبخش فوق، وجود داشت، اقدام به ایجاد کتابخانه سطح بالایی به نام DirectX کرد. این ابزار با بهره گیری از توان کارت های گرافیکی با بهره بری بالا، حداکثر توان آن را برای ایجاد گرافیک های قوی به کار می‌برد. اما به دلیل برقراری ارتباط مشکل با ان و نیاز به کد نویسی های زیاد، این ابزار بیشتر در تهیه بازی ها و برنامه های گرافیکی مورد استفاده قرار گرفت و جایگاه زیادی در توسعه برنامه های تجاری پیدا نکرد. تکنولوژی WPF یا Avalon یک زیر سیستم گرافیکی لحاظ شده در دات نت ۳٫۰ به بالا است که باعث جداسازی ساختار UI از منطق Business Logic می‌گردد. معادل آن (زیر مجموعه ای از آن) در وب هم مورد استفاده قرار می‌گیرد با نامWPF/E  )با نام رمز(SilverLight  و تمامی این مشکلات را مرتفع کرده. WPF از تمامی قدرت DirectX جهت ایجاد گرافیک های ۲ بعدی و ۳ بعدی استفاده می‌کند. همچنین ابزار های بسیاری را جهت طراحی کردن در اختیار شما قرار می‌دهد.[۱]کلید واژه – BAML ،Directx ،GDI ،WPF ،XAML 
 
۱- مقدمه
هنگامی­که NET. برای اولین بار همراه با ویژوال استودیو ۲۰۰۲ پا به عرصه ظهور گذاشت، تکنولوژی­های جدیدی را در زمینه برنامه­نویسی معرفی نمود. به عنوان مثال می­توان به موارد زیر اشاره کرد:
 یک روش کاملاً جدید برای ایجاد برنامه­های تحت وب (ASP.NET).
یک روش کاملاً جدید برای اتصال به پایگاه­های داده (ADO.NET).
 زبان­های نوع­امن جدید (#C و VB.NET).
 مدیریت برنامه­ها در زمان اجرا (CLR).
در میان این تکنولوژی­ها فرم­های ویندوز، که در واقع کتابخانه‌ای از کلاس­های موجود برای ایجاد برنامه­های ویندوزی می­باشد، بیشتر مورد استفاده قرار می­گیرد. هر چند فرم­های ویندوز، ابزاری کامل و با تمام خصوصیات برای ایجاد برنامه­های ویندوزی می­باشند، اما وابستگی شدیدی به اساس کار ویندوز دارند که برای بیش از یک دهه تغییرات زیادی در آن اعمال نشده است.
بیشترین وابستگی فرم­های ویندوز، مربوط به استفاده از APIهای ویندوز به منظور ایجاد یک نمای بصری برای برنامه‌های کاربر می­باشد. در این مورد می­توان به APIهایی که برای ایجاد دکمه، جعبه متن و … استفاده می­شود اشاره کرد. بالنتیجه نمی­توان در کنترل­هایی که با استفاده از این روش ایجاد می­شوند، تغییرات زیادی اعمال کرد (تا قبل از پیدایش WPF اکثر کاربران از همین روش برای ایجاد کنترل­های استاندارد و مورد نظرشان استفاده می­نمودند). به عنوان مثالی در این مورد، اگر بخواهید یک دکمه با متن درخشان و شیک ایجاد کنید، دیگر نمی­توانید از توابع API که برای ایجاد کنترل Button در نظر گرفته شده­اند استفاده کنید.
با تکیه بر مطالبی که در همین سطور بیان گردید، دیگر نمی‌توانید حتی خیال ایجاد جلوه­های جالبی که در اکثر برنامه­های گرافیکی استفاده می­شود (مانند موج­دار کردن دکمه­ها و…) در برنامه­ها را  به ذهنتان راه دهید. زیرا همان گونه که اشاره گردید می­بایست تمامی جنبه­های این جلوه­ها را به صورت دستی ترسیم کنید.
اساس نمایشی ویندوز (WPF) برای حل این معضلات یک ساختار کاری کاملاً جدید را معرفی کرده است. البته WPF از کلیه کنترل­های استانداردی که تاکنون از آنها استفاده می‌نمودید، پشتیبانی می­کند؛ اما برای ایجاد یک کنترل کلیه ترسیمات مربوط به متن، حاشیه و پس زمینه را خودش(WPF) انجام می­دهد. با این تفاصیل، WPF می­تواند با ارئه ویژگی­های قدرتمندتری به برنامه نویس اجازه دگرگون کردن روشی که محتوای هر قسمت از صفحه نمایش رندر می‌شود را بدهد. با استفاده از این ویژگی­ها می­توانید سبک کنترل­های عمومی موجود مانند دکمه را بدون نوشتن کد دوباره طراحی کنید. به شیوه مشابه­ای می­توانید با استفاده از اشیاء تبدیل، هر چیزی که بر روی واسط نمایشی برنامه قرار دارد را دستخوش تغییرات کنید. این تغییرات عبارتند از:
چرخش
کشیدن
بزرگ­نمایی
انحراف (کج کردن) و . . .
ساختار ویژگی­های جدید در WPF، در واقع یک ساختار جدید و قدرتمند که براساس DirectX و APIهایِ گرافیکی سریعِ سخت افزاری، که معمولاً در اکثر بازی­های کامپیوتری مدرن استفاده می­شوند، پایه­گذاری شده است. این بدان معناست که برنامه­نویس می­تواند از Effectهای گرافیکی جالب، بدون توجه سربار اجرایی که به دلیل استفاده از فرم­های ویندوزی ممکن است به وجود آید، استفاده کند. در حقیقت می­توانید از ویژگی­های پیشرفته­ای مانند پشتیبانی از فایل­های ویدئویی و محتویات D3 در فرم­های ویندوزی استفاده کنید.
با به کارگیری این ویژگی­ها( به همراه یک ابزار طراحی‌مناسب) امکان ایجاد واسط­های کاربری تحریک کننده چشم و Effectهای بصری ویژه وجود خواهد داشت. البته باید مجدداً خاطرنشان کنیم که انجام چنین کار­هایی با استفاده از فرم­های ویندوزی تقریباً غیرممکن است.
با توجه به اینکه ویژگی­های مربوط به پویانمایی، D3 و فایل‌های ویدئویی بیشترین توجه در WPF را معطوف خود می­کند، باید توجه داشته باشید که با استفاده از WPF می‌توانید برنامه­های ویندوزی معمولی را با استفاده از خصوصیات بصری ساده (قدیمی) نیز ایجاد کنید. به عبارت دیگر استفاده از کنترل­های معمولی تا هنگامی که WPF در فرم­های ویندوزی کار می­کند به سادگی امکان پذیر است. حتی می­توان این طور بیان کرد که WPF ویژگی­هایی که مستقیماً به توسعه دهندگان تجاری می­شود را تسهیل بخشیده است. این ویژگی­ها به طور گسترده­ای شامل مدل انقیاد داده‌ها، یک مجموعه جدید از کلاس­ها برای چاپ محتویات و مدیریت صف­های چاپ و یک مشخصه متنی برای نشان دادن متن­های بزرگ قالبدار می‌شوند. همچنین یک روش جدید برای ایجاد برنامه­های بر مبنای صفحه که به صورت پیوسته در IE اجرا می­شوند و می‌توان از طریق یک وب سایت به آن دسترسی پیدا کرد و آن را اجرا نمود نیز در نظر گرفته شده است. در این مدل، دیگر اخطارهای امنیتی متداول و تاییدیه­های رنجاننده مربوط به نصب را مشاهده نخواهید کرد.
 WPF یک چارچوب نمایشی کاملاً جدید است که توانایی­های بسیاری از چارچوب­های قبلی را مانند  GDI+، GDI، User و HTML با یکدیگر ترکیب کرده است و توانایی تاثیر گزاری بر روی ابزارهای ایجاد پویانمایی در وب مانند Flash را نیز دارد. البته بر روی برنامه­های ویندوزی مانند Microsoft Word نیز تاثیرگذار است.
۲- معرفی WPF
اساس نمایشی ویندوز یک سیستم نمایش گرافیکی جدید برای سیستم عامل ویندوز می­باشد. این تکنولوژی برای NET. طراحی شده است و همچنین تاثیر زیادی بر تکنولوژی­های نمایشی جدیدی مانند HTML و Flash داشته و باعث بهینه سازی سرعت سخت افزار می­گردد. WPF شامل تغییرات بنیادینی در زمینه واسط­ گرافیکی ویندوز از زمان ۹۵‌Windows می­باشد.
۲-۱- درک گرافیک ویندوز
درک مزایای مهیج و زیبای WPF بدون پی بردن به این نکته که چگونه برنامه نویسان ویندوز از تکنولوژی­های نمایشی مشابه و یکسان برای بیش از ۱۰ سال استفاده می­کردند واقعاً سخت است.
یک برنامه ویندوزی جدید که با زبان #C و یا VB.NET نوشته می­شود، به صورت غیر مستقیم به دو بخش اصلی سیستم­عامل ویندوز  برای ایجاد واسط گرافیکی­اش وابسته است:
User32: این قسمت عهده­دار فراهم آوردن نمایی شبیه ویندوز برای برنامه است و با عناصری مانند فرم­ها، دکمه­ها، جعبه­های متن و … سر و کار دارد.
GDI/GDI+: این قسمت پشتیبان ترسیمی برای ایجاد اشکال، متن­ها و تصاویر در قبال هزینۀ پیچیدگی­های اضافی در برنامه می­باشد (البته معمولا عملکرد آن بی زرق و برق است).
هر دو تکنولوژی در سال­های متمادی مورد بازبینی­های متعدد قرار گرفتند و APIهایی که برای تعامل برنامه نویسان با آنها در نظر گرفته شده بودند نیز تغییرات چشمگیری داشته اند. اما هنگامی که برنامه نویسان قصد داشتند در برنامه ای اقدام به ایجاد تصاویر دستی کنند قسمت­های یکسانی از سیستم عامل ویندوز در پشت پرده در حال کار بودند. Frameworkهای جدیدتر روش­های بهتری برای تعامل با User32 و همچنین +GDI/GDI ارائه کردند. این روش­ها بهبودهای زیادی در کارآیی برنامه، کاهش پیچیدگی برنامه به همراه داشتند. البته این روش­ها ویژگی­هایی نیز اضافه می­کردند که با استفاده از آنها برنامه نویس نیازی به کدنویسی زیاد نداشت. اما این روش­ها نیز نتوانستند محدودیت­های اساسیِ اجزای اصلی سیستم که بیش از یک دهه از طراحی آن می­گذشت را حذف کنند.
۲-۲- DirectX موتور گرافیکی جدید:
مایکروسافت برای رهایی از محدودیت­های موجود در کتابخانه­های User32 و +GDI/GDI تکنولوژی جدیدی را مورد استفاده قرار داد. این تکنولوژی در واقع همان DirectX می­باشد. DirectX به عنوان یک ابزار مستعد خطا و متحد برای ایجاد بازی های کامپیوتری بر روی پلتفرم ویندوز کار خود را آغاز کرد.
هدف اصلی در طراحی DirectX افزایش سرعت بود؛ از اینرو مایکروسافت به تعمال نزدیکی با سازندگان کارت­های ویدئویی به منظور فراهم کردن شتاب سخت افزاری لازم که برای الگوهای گرافیکی پیچیده لازم بودند و همچنین effectهای ویژه ای مانند شفافیت و گرافیک سه بعدی پرداخت.
این تکنولوژی در طول سال­های بعد از اولین انتشارش رشد‌های قابل ملاحظه­ای داشته است و هم اکنون یکی از اجزای لاینفک در سیستم عامل ویندوز می­باشد که از تمامی کارت­های ویدئویی پشتیبانی می­کند. اگرچه APIهای برنامه نویسیِ DirectX هنوز هم اساس کار آن را به عنوان ابزاری برای توسعه بازی معرفی می­کنند، اما به علت پیچدیگی زیاد کار با آنها، از DirectX تقریباً در هیچ یک از برنامه­های ویندوزی (مانند برنامه­های تجاری)استفاده نمی­شود.
WPF تمامی این مشکلات را برطرف کرده است. در WPF از تکنولوژی­های +GDI/GDI به عنوان پایه کار استفاده نمی­شود. در عوض از DirectX استفاده می­شود. در برنامه­های WPF بدون توجه به اینکه برنامه نویس چه واسط کاربری را ایجاد می­کند از DirectX استفاده می­شود. این بدان معناست که اگر شما بخواهید یک طرح گرافیکی پیچیده و سه بعدی ایجاد کنید، تمامی کار­های ترسیمی از طریق DirectX انجام می‌شود. بالنتیجه، می­توانید در تمامی برنامه­های تجاری به سادگی effectهای غنی را بدون هیچ مشکلی به کار برید. همچنین می­توانید از مزایایِ شتاب­دهنده سخت­افزاری نیز بهره­مند شوید. این بدان معناست که DirectX به کارهایِ زیادی که به GPU مرتبط است دخالت نمی­کند و به انجام کارهای دیگری می­پردازد.
نکته: DirectX نسبت به +GDI/GDI کارآیی بهتری دارد؛ زیرا درک دقیقی از عوامل سطح بالا مانند گرادیان­ها (شیب) و همچنین الگوها را که می­توانند مستقیماً توسط کارت ویدئویی انجام شوند را دارد اما +GDI/GDI از این مزیت بی­بهره­اند. از اینرو برای انجام چنین کار­هایی توسط +GDI/GDI باید دستورات مربوطه را به دستورات پیکسل به پیکسل تبدیل کرده و سپس اجرا کنید. بدیهی است که این عمل مدت زمانی طولانی­تری را به خود اختصاص می­دهد و بسیار کند عمل می­کند.
تنها عنصری که هنوز در صحنه حاضر است User32 (با کمی محدودیت) می­باشد. این امر بدان دلیل است که WPF هنوز از User32 برای انجام سرویس­های خاصی مانند اجرای دریافت ورودی­ها ودسته­بندی اینکه هر برنامه دربردارنده چه قسمتی از صفحه نمایش می­باشد. با این حال کلیه عملیات ترسیمی توسط DirectX انجام می­پذیرد.
نکته: در پشتیبانی نرم­افزاری WPF یک حالت استثناء وجود دارد. به علت پشتیبانی ضعیف راه­اندازها، WPF فقط هنگامی عمل خوشنماسازی را برای ترسیمات D3 انجام می­دهد که برنامه بر روی ویندوز Vista اجرا گردد. این بدان معناست که اگر تصویر سه بعدی را بر روی سیستم عامل Windows XP رسم کنید، احتمالاً با لبه­هایی دندانه­دار در انتها تصویر مواجه خواهید شد. اما اگر همان تصویر را در Windows Vista اجرا کنید لبه­های تصویر روان و سلیس خواهند بود. خوشنماسازی برای ترسیمات D2 بدون در نظر گرفتن سیستم عامل پیاده‌سازی شده است.
 نکته: با داشتن یک کارت ویدئویی قدرتمند، تضمینی برای داشتن سرعت و کیفیت در WPF وجود ندارد. نرم­افزار­ها در این مورد نیز نقش مهمی را ایفا می­کنند.
نکته: هدف اصلی WPF پردازش کارهای گرافیکی توسط GPU برای می­باشد. به جای استفاده از CPU اصلی کامپیوتر برای پردازش روتین­های گرافیکی پیچیده از GPU که بر روی کارت گرافیکی به صورت مجزا وجود دارد استفاده می­شود. با این کار CPU برای انجام فعالیت­های دیگر آزاد باقی می­ماند و از کارت ویدئویی استفاده مناسب و حداکثر صورت خواهد گرفت.
۲ – ۳– WPF یک API با سطح بالاتر
اگر شتاب سخت­افزاری با استفاده از DirectX را به عنوان تنها پیشنهاد WPF در نظر بگیریم، آنگاه این تکنولوژی چیزی جز یک بهبود در عمل کامپایل نخواهد بود و نمی­توان آن را به عنوان یک حرکت انقلابی در زمینه کارهای ترسیماتی به حساب آورد. WPF برای ایجاد یک حرکت دگرگون­ساز سرویس­های سطح بالایی را برای برنامه نویسان فراهم آورده است. این سرویس­ها عبارتند از:
یک مدل آرایشی تارمانند: WPF به جای ارائه کنترل­هایی ثابت و با گوشه­های مشخص، بر روی یک صفحه آرایی انعطاف پذیر که در آن می­توان کنترل­ها را بر اساس محتوایشان تنظیم کرد، تاکید فراوان دارد. نتیجه این تاکید ایجاد یک واسط کاربری که می­توان آن را برای نمایش محتویات پویا سازگار کرد می­باشد.
یک مدل ترسیماتی غنی: در WPF به جای رسم کردن پیکسل­ها با چند مورد از اشکال پایه­ای و ابتدایی، بلوک­های متنی و عناصر گرافیکی دیگر سروکار خواهیم داشت. البته در میان مزایای فوق نباید پشتیبانی ذاتی از ترسیمات D3 را از یاد برد.
نکته: پشتیبانی از ترسمیات از ترسمیات D3 در WPF قدرت برابری با OpenGL و یا Direct3D را ندارد. اگر قصد دارید که برنامه­ای که ترسیمات سه بعدی سنگینی را در بردارد پیاده­سازی کنید (مانند بازی­های امروزی) WPF 1.0 احتمالاً جوابگوی کار شما نخواهد بود.
 یک مدل متنی غنی: سال­ها پس از نشان دادن متن­ها در کنترل­های ضعیفی مانند Labelها، WPF برای برنامه­های ویندوز قابلیت نشان دادن متن­ها با سلیقه­های مختلف در هر نقطه از واسط کاربری را به ارمغان آورده است.
پویانمایی به عنوان بهترین مفهوم برنامه نویسی: تاکنون می‌تواستید با استفاده از زمان­سنج فرم برنامه را مجبور به دوباره­سازی خودش کنید. اما در WPF، پویانمایی یک جز طبیعی و ذاتی در Framework می­باشد. برای این منظور ابتدا انیمیشن­ها را با استفاده از تگ­های اعلانی تعیین می­کنیم و سپس WPF آنها را در دستور کار قرار می­دهد.
پشتیبانی از رسانه­های صوتی و تصویری: ابزاری های ایجاد واسط کاربری که قبلاً مورد استفاده قرار می‌گرفتند مانند فرم‌های ویندوزی برای کار با رسانه­های صوتی و تصویری به صورت چشمگیری محدود بودند. اما WPF این مشکل را برای برنامه نویسان رفع کرده است.
 دستورات: یکی از جنبه ها و امکانات فوق العاده زیبا و قدرتمند WPF  ستفاده از دستورات برای هماهنگ سازی واکنش های مختلف کاربر و هماهنگ سازی قسمت های مختلف برنامه به کار می‌رود. برای بسیاری از کاربران انجام یک کار چه از طریق منوها با نوار ابزار فرقی ندارد؛ زیرا نتیجه هر دو یکسان است. به همین منظور با استفاده از WPF می‌توان دستورات را در جایی قرار داد و به آنها اشاره کرد.
واسط کاربری اعلانی: هر چند برنامه نویسان می­توانند پنجره‌های WPF را با استفاده کدنویسی ایجاد کنند، اما VS.NET از روش دیگری استفاده می­کند. VS.NET هر عنصر در پنجره را به صورت تگ­های XML در XAML ایجاد می‌کند. مزیت این کار جداسازی کدهای اصلی برنامه از کدهای مربوط به واسط کاربری می­باشد. همچنین کرد بروز‌رسانی واسط با استفاده از ابزار­هایی که برای این منظور در نظر گرفته شده است بسیار راحت تر خواهد بود.
برنامه های براساس صفحه: با استفاده از WPF، می‌توانید برنامه­هایی مانند مرورگر­ها ایجاد کنید. این برنامه­ها به شما اجازه می­دهند در مجموعه صفحات حرکت کنید، اطلاعات را کامل کنید و با استفاده از دکمه­ها forward/backward به صفحه­های بعد و قبل حرکت کنید.[۲]
عدم وابستگی WPF به رزولوشن:  بدون شک یکی از جنبه های فوق العاده مفید و قوی WPF عدم وابستگی آن به رزولوشن صفحه نمایش است. برنامه های تحت ویندوزی که تا کنون و با تکنولوژی های موجود نوشته می‌شدند(می‌شوند) وابستگی زیادی به رزولوشن صفحه نمایش دارند. با WPF این مشکلات مرتفع می‌گردد. دلیل آن هم استفاده از سیستم خاصی برای اندازه گیری اجزاء و عناصر برنامه می‌باشد. عناصر، با واحدی با نام DIU (Device Independent Unit ) اندازه گیری می‌شوند. هر یک DIU معادل با ۱/۹۶ (۱ تقسیم بر ۹۶) هر اینچ می‌باشد. در واقع می‌توان گفت هر DIU در صفحه نمایشی با تراکم پیکسل استاندارد یعنی ۹۶ DPI ، دقیقا برابر با ۱ پیکسل فیزیکی در صفحه نمایش است. حال اگر از DPI بالاتری استفاده گردد، طبیعتا هر یک DIU (در همان رزولوشن قبلی) کمتر از ۱ پیکسل خواهد شد.
۲ – ۴– معماری WPF:
تکنولوژی WPF یک تکنولوژی چند لایه می‌باشد که معماری آن در شکل ۱ نمایش داده شده است. در بالاترین لایه آن اسمبلی های پایه ای و اساسی WPF قرا گرفته اند که تماما به صورت کد های مدیریت شده C#   می‌باشند. این لایه شامل API های PresentationFramework.dll، WindowsBase.dll وPresentationCore.dll می‌باشد که در واقع برنامه شما با این اسمبلی ها ارتباط خواهد داشت.
همانطور که گفته شد، برنامه شما در بالاترین سطح با API های سطح بالا که در واقع پایه واساس WPF را تشکیل می‌دهند، ارتباط بر قرار می‌کنند. در ادامه به تشریح هر یک از این کامپوننت ها و ابزار ها خواهم پرداخت:
PresentationFramework.dll: این اسمبلی در واقع تمامی شئ های سطح بالا و در واقع به نوعی بالاترین سطح از شئ های WPF مانند Windows ها و Panel ها که از دیگر اجزاء اساسی برنامه های WPF است،را نگه داری می‌کند.
Presentationcore.dll: شامل نوع های پایه از جمله UIElement و Visual می‌باشد که تمامی اشکال و کنترل های از این کلاس ها ارث بری می‌کنند.
خــریــد ایــــن فـــایــــل

مطالب شابه مطلب فوق