آموزش xaml

آنچه در این صفحه می خوانید:

معرفی XAML

Extensible Application Markup Language یک زبان مبتنی بر XML است که توسط مایکروسافت ساخته شده است و برای مقادیر ساختار اولیه و اشیاء استفاده می شود. XAML زیر سیستم گرافیکی برای رندر واسط‌های کاربر در برنامه‌های کاربردی تحت ویندوز می‌باشد. نام اصلی این کلمه مخفف Extensionible Avalon Markup Language بود که Avalon نامی برای بنیان نمایش ویندوز (WPF) بود.

XAML به طور گسترده ای در فناوری های دات نت فریمورک به ویژه WPF، سیلورلایت، بنیاد گردش کار ویندوز (WF)، ویندوز Runtime XAML Framework و برنامه های Windows Store استفاده می شود.XAML در WPF یک زبان نشانه گذاری رابط کاربر را برای تعریف عناصر UI، اتصال داده ها، رویدادها و سایر ویژگی ها را تشکیل می دهد. در WF می توان جریان کار را با استفاده از XAML تعریف کرد. XAML همچنین می تواند در برنامه های Silverlight، ویندوز 10 موبایل و برنامه های گلوبال پلتفرم ویندوز به نام برنامه های Windows Store نیز استفاده شود.

عناصر XAML به طور مستقیم به نمونه های شی Runtime در زبان مشترک نقشه می کنند، در حالی که XAML نقشه را به ویژگی ها و رویداد های ران تایم در زبان مشترک نسبت می دهد. فایل های XAML را می توان با ابزار طراحی ویژوال مانند مایکروسافت Expression، ویژوال استودیو و طراح میزبان ویندوز Workflow میزبان ایجاد و ویرایش کرد. همچنین می توان آنها را با ویرایشگر متن استاندارد، ویرایشگر کد مانند XAMLPad یا ویرایشگر گرافیکی مانند Vector Architect ایجاد و ویرایش کرد.

هر چیزی که در XAML ایجاد یا پیاده سازی شود، می تواند با استفاده از زبان سنتی دات نت، مانند سی شارپ یا ویژوال بیسیک دات نت بیان شود. با این حال، جنبه اصلی این فناوری کاهش پیچیدگی مورد نیاز ابزارها برای پردازش XAML است، زیرا این برنامه مبتنی بر XML است. در نتیجه، محصولات متنوعی به ویژه در فضای WPF در حال ظهور هستند که برنامه های مبتنی بر XAML ایجاد می کنند. از آنجا که XAML به سادگی مبتنی بر XML است، توسعه دهندگان و طراحان قادرند بدون نیاز به تدوین، محتوا را آزادانه در میان خود به اشتراک بگذارند و ویرایش کنند. XAML همچنین از تولید تعریفی اعلامی UI به جای کد رویه ای برای تولید آن سود می برد.

ساختار XAML

فایل XAML می تواند در فایل BAML. (زبان نشانه گذاری برنامه کاربردی باینری) وارد شود، که ممکن است به عنوان منبع در مجموعه فریمورک دات نت وارد شود. در ران تایم، موتور فریمورک فایل BAML. را از منابع اسمبلی استخراج می کند و درخت ویژوال WPF یا گردش کار را ایجاد می کند.

از XAML برای رندر واسط های کاربر در بنیان نمایش ویندوز استفاده می شود. WPF امکان تعریف هر دو اشیاء 2D و 3D، چرخش ها، انیمیشن ها و انواع جلوه ها و ویژگی های دیگر را فراهم می آورد. هنگامی که در زمینه های بنیاد گردش کار ویندوز استفاده می شود، از XAML برای توصیف منطق اعلانی بالقوه طولانی مدت، مانند موارد ایجاد شده توسط ابزارهای مدل سازی فرآیند و سیستم های قوانین استفاده می شود. پیش از این فرمت سریال سازی برای گردش کار XOML نامیده می شد، تا آن را از استفاده UI نشانه گذاری XAML متمایز کند، اما اکنون دیگر از هم متمایز نیستند. با این حال، پسوند فایل برای فایل های حاوی نشانگر گردش کار هنوز "XOML" است.

مقایسه XAML با XML

اکس ام ال (XML)

Extensible Markup Language به اختصار XML با معنای زبان نشانه‌گذاری گسترش‌پذیر، زیرمجموعه زبان SGML است و زبان نشانه گذاری بسط پذیر محسوب می شود. اما بر عکس SGML این زبان در طراحی وب کاربرد دارد. این زبان در سال ۱۹۹۶ توسط کنسرسیوم جهان وبی معرفی شد. می توان گفت امروزه تقریباً همه تکنولوژی های خدمات وب، گرافیک برداری، RDF و غیره فقط با XML صورت می گیرد.

XML زبان نشانه گذاری است که مجموعه ای از قوانین را برای رمزگذاری اسناد به فرمت تعریف می کند که هم قابل خواندن توسط انسان و هم قابل خواندن با ماشین است. مشخصات جهانی کنسرسیوم وب جهانی XML 1.0 مشخصات 1998 و چندین مشخصات مرتبط دیگر، XML را تعریف می کند.

اهداف طراحی XML بر سادگی، عمومی و قابلیت استفاده در اینترنت تأکید دارد. این یک فرمت داده متنی با پشتیبانی قوی از طریق یونیکد برای زبان های مختلف انسانی است. اگرچه طراحی XML بر اسناد متمرکز است، اما این زبان برای بازنمایی ساختارهای داده دلخواه مانند مواردی که در سرویس های وب استفاده می شود، به طور گسترده ای مورد استفاده قرار می گیرد. چندین سیستم شمای برای کمک به تعریف زبان های مبتنی بر XML وجود دارد، در حالی که برنامه نویسان برای کمک به پردازش داده های XML، رابط های برنامه نویسی بسیاری از برنامه ها (API) را توسعه داده اند.

تفاوت ها:

  1. همه اسناد XAML همچنین اسناد XML معتبر هستند، اما برعکس این واقعیت صحت ندارد.
  2. XML یک زبان نشانه گذاری است در حالی که XAML یک زبان برنامه اعلامی است.
  3. XML بر خلاف XAML که برای طراحی کنترل برای ویندوز و همچنین برنامه های وب استفاده می شود، عمدتا در برنامه های وب کاربرد دارد.
  4. XAML یک زبان کاربردی اعلامی است که بر تعریف شی، خصوصیات آنها و رابطه آنها بین یکدیگر تمرکز دارد.
  5. XML یک زبان نشانه گذاری است که توسط W3C ایجاد شده است و برای توصیف سایر زبان های نشانه گذاری استفاده می شود.
  6. XML در انتشار وب برای ایجاد صفحات تعاملی، جستجوی وب و به صورت خودکار کارهای خاص وب استفاده می شود. در تجارت الکترونیک استفاده می کند و به نمایش اطلاعات در مورد دستگاه های بی سیم و تلفن های همراه کمک می کند.
  7. XAML برای ایجاد، ویرایش و استفاده مجدد از رابط کاربری گرافیکی برای Windows و برنامه های وب خاص مانند افزونه های Silverlight استفاده می شود.
  8. XAML در حال حاضر فقط برای سیستم عامل ویندوز در دسترس است. سرانجام طی مدت زمان دیگری به سیستم عامل های دیگر منتقل می شود. XML به دلیل انعطاف پذیری، جایگزین HTML است.

مثال XAML

این مثال WPF متن "!Hello, world" را نشان می دهد.

<Canvas xmlns="http://schemas.microsoft.com/client/2007"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <TextBlock>Hello, world!</TextBlock>
</Canvas>

ممکن است طرح (قسمت "http://schemas.microsoft.com/client/2007") برای کار روی رایانه شما تغییر کند. با استفاده از شماتیکی که مایکروسافت توصیه می کند، به عنوان نمونه نیز می تواند باشد.

<Canvas xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
  <TextBlock>Hello, world!</TextBlock>
</Canvas>

اگر WPF با استفاده از XBAPs (برنامه های مرورگر XAML) که برنامه هایی در حال اجرا در یک محیط sandboxed هستند که در یک مرورگر میزبانی شده است، می توان این را در یک صفحه وب قرار داد. روش دیگر استفاده از افزونه Silverlight است. کد را نمی توان مستقیماً در یک صفحه اچ تی ام ال (HTML) درج کرد. بلکه باید از طریق جاوااسکریپت وارد صفحه شود. اگر NET 3.0. یا بالاتر نصب شده باشد، فایل های XAML نیز می توانند به صورت جداگانه در یک مرورگر وب سازگار (از جمله اینترنت اکسپلورر و فایرفاکس) در رابطه با NET Framework 3.0.، بدون نیاز به افزونه Silverlight مشاهده شوند. فایل های XAML شل فقط به عنوان نشانه گذاری محدود به تعریف محتوای بصری برای ارائه هستند. آنها با یک برنامه کامپایل نشده اند.

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>XAML Example</title>
    <script type="text/javascript" src="MySilverlight.js" />
    <script type="text/javascript" src="Silver.js" />
  </head>
  <body>
    <div id="MySilverlight" >
    </div>
    <script type="text/javascript">
      createMySilverlight();
    </script>
  </body>
</html>

فایل MySilverlight.js باید حاوی کد باشد که کد XAML فوق (به عنوان یک فایل XML) را در زیر عنصر MySilverlight HTML بارگذاری می کند. بخش مهمی از استفاده از XAML در پتانسیل های کامل استفاده از صحافی از اتصال، همچنین راحتی در ایجاد عناصر کاربری شخصی شما در صورت نیاز برای نیازهای خاص شما راحت است. اتصال می تواند به شرح زیر انجام شود:

<TextBox x:Name="txtInput" />
<TextBlock Text={Binding ElementName=txtInput,Path=Text} />
نظرتون درباره این نوشته چیه؟ عالیه بد نیست خوب نبود