<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Fluentui on It Must Be Code!</title><link>https://itmustbecode.com/tags/fluentui/</link><description>Recent content in Fluentui on It Must Be Code!</description><generator>Hugo</generator><language>en-CA</language><lastBuildDate>Fri, 05 Apr 2024 04:03:22 +0000</lastBuildDate><atom:link href="https://itmustbecode.com/tags/fluentui/feed.xml" rel="self" type="application/rss+xml"/><item><title>How to Get PCF Controls Ready for Dark Mode in Model-Driven Apps</title><link>https://itmustbecode.com/how-to-get-pcf-controls-ready-for-dark-mode-in-model-driven-apps/</link><pubDate>Fri, 05 Apr 2024 04:03:22 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/how-to-get-pcf-controls-ready-for-dark-mode-in-model-driven-apps/</guid><description>&lt;p&gt;Although not officially released, there are strong signals that the support for &lt;strong&gt;Dark mode&lt;/strong&gt; 🌚 is coming very soon to Power Platform Model-Driven apps.&lt;/p&gt;
&lt;p&gt;Recent investments made in the platform like the &amp;rsquo; &lt;strong&gt;New look&lt;/strong&gt;&amp;rsquo; that leverages the Fluent 2 design system are paving the way to Dark Mode.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;🔗 &lt;a class="link" href="https://itmustbecode.com/adapting-pcf-controls-for-model-driven-apps-new-modern-look/" &gt;Adapting PCF Controls for Model Driven apps New (Modern) Look&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;🔗 &lt;a class="link" href="https://learn.microsoft.com/en-us/power-apps/user/modern-fluent-design?WT.mc_id=DX-MVP-5004959" target="_blank" rel="noopener"
&gt;Modern, refreshed look for model-driven apps - Power Apps | Microsoft Learn&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PCF Controls with FluentUI v9 - Avoid DOM id collisions</title><link>https://itmustbecode.com/pcf-controls-with-fluentui-v9-avoid-dom-id-collisions/</link><pubDate>Tue, 16 Jan 2024 02:24:28 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/pcf-controls-with-fluentui-v9-avoid-dom-id-collisions/</guid><description>&lt;p&gt;Recently, while developing a PCF control with the &lt;strong&gt;FluentUI React v9&lt;/strong&gt; library, I encountered a rather unusual and annoying runtime display bug. Its resolution ended up shedding light on an important concept that had previously escaped my attention and I thought it deserves its own blog post.&lt;/p&gt;
&lt;h2 id="the-symptoms"&gt;🤒The symptoms
&lt;/h2&gt;&lt;p&gt;The control I was developing is my latest community PCF control, the &lt;strong&gt;FluentUI Month Picker&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;🔗&lt;a class="link" href="https://pcf.gallery/fluentui-month-picker/" target="_blank" rel="noopener"
&gt;FluentUI Month Picker | PCF Gallery&lt;/a&gt;
🔗 GitHub repo : drivardxrm/FluentUI.MonthPicker.PCF&lt;/p&gt;</description></item><item><title>Adapting PCF Controls for Model Driven apps New (Modern) Look</title><link>https://itmustbecode.com/adapting-pcf-controls-for-model-driven-apps-new-modern-look/</link><pubDate>Tue, 17 Oct 2023 01:59:13 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/adapting-pcf-controls-for-model-driven-apps-new-modern-look/</guid><description>&lt;p&gt;If you&amp;rsquo;re a user of a Power Platform&amp;rsquo;s model-driven app, you&amp;rsquo;ve likely come across the &amp;rsquo; &lt;strong&gt;Try the new look&lt;/strong&gt;&amp;rsquo; switch appearing on your app header.&lt;/p&gt;
&lt;figure&gt;&lt;img src="./image-6.png"loading="lazy"&gt;&lt;/figure&gt;
&lt;p&gt;Indeed, toggling this switch will result in the platform adopting a modern Fluent Design System (a.k.a. &lt;a class="link" href="https://fluent2.microsoft.design/" target="_blank" rel="noopener"
&gt;&lt;strong&gt;Fluent 2&lt;/strong&gt;&lt;/a&gt;) for rendering model-driven form elements such as fields and command bars.&lt;/p&gt;
&lt;p&gt;While this evolution is undoubtedly a positive and necessary step for the platform as a whole, it can present several challenges for PCF Control authors aiming to ensure their controls seamlessly blend with the out-of-the-box UI, delivering a polished user experience.&lt;/p&gt;</description></item><item><title>Develop PCF Controls with FluentUI React v9</title><link>https://itmustbecode.com/develop-pcf-controls-with-fluentui-react-v9/</link><pubDate>Fri, 26 Aug 2022 04:50:52 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/develop-pcf-controls-with-fluentui-react-v9/</guid><description>&lt;p&gt;Microsoft recently unveiled the first stable version of &lt;strong&gt;FluentUI React v9&lt;/strong&gt;( &lt;strong&gt;&lt;code&gt;@fluentui/react-components&lt;/code&gt;&lt;/strong&gt;). This new edition of FluentUI is the result of joint efforts from the &lt;strong&gt;Office&lt;/strong&gt; and &lt;strong&gt;Teams&lt;/strong&gt; product teams to streamline their respective React front-end libraries into one component framework.&lt;/p&gt;
&lt;p&gt;To celebrate this 🎉, I have released 2 community PowerApps Control Framework ( &lt;strong&gt;PCF&lt;/strong&gt;) Controls that targets this new library.&lt;/p&gt;
&lt;p&gt;In this post I will reflect on my experience authoring PCF controls with this new set of components and highlight the main differences with prior versions.&lt;/p&gt;</description></item><item><title>PCF Controls - Tree-Shaking For Better Bundle Size</title><link>https://itmustbecode.com/pcf-controls-tree-shaking-for-better-bundle-size/</link><pubDate>Mon, 25 Jul 2022 02:29:08 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/pcf-controls-tree-shaking-for-better-bundle-size/</guid><description>&lt;p&gt;Building modern front-end controls and application requires great care to keep the &lt;strong&gt;size&lt;/strong&gt; of the assets as &lt;strong&gt;low&lt;/strong&gt; as possible. The development of PowerApps Control Framework (PCF) controls doesn&amp;rsquo;t fall short from this rule.&lt;/p&gt;
&lt;p&gt;In this post I will show how to optimize the &lt;strong&gt;tree-shaking&lt;/strong&gt; process and &lt;strong&gt;reduce&lt;/strong&gt; thebundle size of PCF controls with simple adjustments to &lt;strong&gt;module resolution&lt;/strong&gt; of the Typescript configuration file.&lt;/p&gt;
&lt;h2 id="how-i-got-there"&gt;How I got there
&lt;/h2&gt;&lt;p&gt;After seeing this tweet from &lt;a class="link" href="https://twitter.com/ScottDurow" target="_blank" rel="noopener"
&gt;Scott Durow&lt;/a&gt; that announced the release of &lt;a class="link" href="https://react.fluentui.dev/" target="_blank" rel="noopener"
&gt;&lt;strong&gt;FluentUI React v9&lt;/strong&gt;&lt;/a&gt; , I felt the urge and I immediately started a new PCF control project that targets this new library.&lt;/p&gt;</description></item><item><title>Related Record Filtering with the Lookup Dropdown PCF</title><link>https://itmustbecode.com/related-record-filtering-with-the-lookup-dropdown-pcf/</link><pubDate>Wed, 09 Feb 2022 02:37:48 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/related-record-filtering-with-the-lookup-dropdown-pcf/</guid><description>&lt;p&gt;In the latest release of the &lt;strong&gt;LookupDropdown PCF&lt;/strong&gt; control for Dataverse, I have added a new feature that adds support for &lt;strong&gt;related record filtering&lt;/strong&gt;, hence the ability to filter the values of a dropdown in real-time based on the value of another lookup field. When rendered, this can produce nice cascading effect as seen below.&lt;/p&gt;
&lt;figure&gt;&lt;img src="./image-8.png"loading="lazy"&gt;&lt;/figure&gt;
&lt;figure&gt;&lt;img src="./image-9.png"loading="lazy"&gt;&lt;/figure&gt;
&lt;p&gt;In this post I will show how to configure the PCF control for this scenario and dissert on what&amp;rsquo;s happening under the hood to make the magic happen.&lt;/p&gt;</description></item><item><title>Better UX with a Lookup Dropdown PCF Control</title><link>https://itmustbecode.com/better-ux-with-a-lookup-dropdown-pcf-control/</link><pubDate>Thu, 06 Jan 2022 02:35:50 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/better-ux-with-a-lookup-dropdown-pcf-control/</guid><description>&lt;p&gt;One of the most anticipated feature of the &lt;strong&gt;PowerApps Control Framework&lt;/strong&gt; (PCF) last year was the &lt;strong&gt;Lookup datatype support&lt;/strong&gt;. Hence the ability to bind a PCF control to a &lt;strong&gt;Lookup&lt;/strong&gt; field in a Dataverse Model-Driven form to customize it&amp;rsquo;s behavior.&lt;/p&gt;
&lt;p&gt;The feature was released last summer (&lt;a class="link" href="https://powerapps.microsoft.com/en-us/blog/announcing-the-general-availability-of-the-power-apps-component-framework-for-canvas-apps/" target="_blank" rel="noopener"
&gt;see official post&lt;/a&gt;) and the first idea that came to my mind was to create a PCF control that renders a lookup field as a &lt;strong&gt;dropdown&lt;/strong&gt; list instead of the of the out-of-the-box lookup selector.&lt;/p&gt;</description></item><item><title>Rating PCF</title><link>https://itmustbecode.com/rating-pcf/</link><pubDate>Wed, 10 Jun 2020 21:12:43 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/rating-pcf/</guid><description>&lt;figure&gt;&lt;img src="./image-1.png" alt="This image has an empty alt attribute; its file name is image-1.png"loading="lazy"&gt;&lt;figcaption&gt;This image has an empty alt attribute; its file name is image-1.png&lt;/figcaption&gt;&lt;/figure&gt;
&lt;figure&gt;&lt;img src="https://pcf.gallery/assets/videos/ratingpcf.gif"loading="lazy"&gt;&lt;/figure&gt;
&lt;h3 id="pcf-gallery"&gt;&lt;strong&gt;PCF Gallery&lt;/strong&gt;
&lt;/h3&gt;&lt;a class="link-card" href="https://pcf.gallery/rating-pcf/" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://itmustbecode.com/linkcards/c2348b9b7dcd23a2.png" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;Rating PCF&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;A control to create a configurable rating system based on FluentUI.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;pcf.gallery&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;
&lt;h3 id="github-repo"&gt;&lt;strong&gt;GitHub repo&lt;/strong&gt;
&lt;/h3&gt;&lt;a class="link-card" href="https://github.com/drivardxrm/Rating.PCF" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://itmustbecode.com/linkcards/5f73033359771e6e.jpg" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;drivardxrm/Rating.PCF&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;Contribute to drivardxrm/Rating.PCF development by creating an account on GitHub.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;github.com&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;</description></item><item><title>Power Platform Saturday - Build awesome PCF’s using React Hooks</title><link>https://itmustbecode.com/power-platform-saturday-build-awesome-pcfs-using-react-hooks/</link><pubDate>Sun, 07 Jun 2020 11:01:00 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/power-platform-saturday-build-awesome-pcfs-using-react-hooks/</guid><description>&lt;h2 id="power-platform-saturday--developer-edition-june-2020---build-awesome-pcfs-using-react-hooks"&gt;Power Platform Saturday – Developer Edition June 2020 - Build awesome PCF’s using React Hooks
&lt;/h2&gt;&lt;p&gt;Here is the video of my session&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;iframe loading="lazy"
src="https://www.youtube.com/embed/C7UlxLunwYs"
allowfullscreen
title="YouTube Video"
&gt;
&lt;/iframe&gt;
&lt;/div&gt;</description></item><item><title>Date Two Option PCF</title><link>https://itmustbecode.com/date-two-option-pcf/</link><pubDate>Sat, 09 May 2020 20:50:33 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/date-two-option-pcf/</guid><description>&lt;figure&gt;&lt;img src="https://pcf.gallery/assets/images/datetwooption.png" alt="Date Two Option"loading="lazy"&gt;&lt;figcaption&gt;Date Two Option&lt;/figcaption&gt;&lt;/figure&gt;
&lt;h3 id="pcf-gallery"&gt;&lt;strong&gt;PCF Gallery&lt;/strong&gt;
&lt;/h3&gt;&lt;a class="link-card" href="https://pcf.gallery/date-two-option/" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://itmustbecode.com/linkcards/d2ac0a45da6d75a7.png" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;Date Two Option&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;A control that turns a PowerApps date field into a checkbox. When the checkbox is clicked, the current date is stored in the backing date field.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;pcf.gallery&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;
&lt;h3 id="github-repo"&gt;&lt;strong&gt;GitHub repo&lt;/strong&gt;
&lt;/h3&gt;&lt;a class="link-card" href="https://github.com/drivardxrm/DateTwoOption.PCF" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://itmustbecode.com/linkcards/5f73033359771e6e.jpg" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;drivardxrm/DateTwoOption.PCF&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;Contribute to drivardxrm/DateTwoOption.PCF development by creating an account on GitHub.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;github.com&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;</description></item><item><title>Country Picker PCF</title><link>https://itmustbecode.com/country-picker-pcf/</link><pubDate>Wed, 15 Jan 2020 21:45:05 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/country-picker-pcf/</guid><description>&lt;p&gt;&lt;figure&gt;&lt;img src="./image.png"loading="lazy"&gt;&lt;/figure&gt;
&lt;a class="link-card" href="https://pcf.gallery/country-picker/" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://itmustbecode.com/linkcards/453075a886fb52c7.png" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;Country Picker&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;A control that renders a Text field as a Combobox displaying country names and flags. Country information comes from the public API https://restcountries.eu.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;pcf.gallery&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;
&lt;/p&gt;
&lt;a class="link-card" href="https://github.com/drivardxrm/CountryPicker.PCF" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://repository-images.githubusercontent.com/229957346/c1264e80-30d2-11ea-833c-f3739687ae0a" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;drivardxrm/CountryPicker.PCF&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;Country Picker PCF. Contribute to drivardxrm/CountryPicker.PCF development by creating an account on GitHub.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;github.com&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;</description></item><item><title>OptionsetIcons PCF</title><link>https://itmustbecode.com/optionseticons-pcf/</link><pubDate>Wed, 04 Dec 2019 21:56:04 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/optionseticons-pcf/</guid><description>&lt;figure&gt;&lt;img src="https://pcf.gallery/assets/images/optionseticons.png" alt="OptionSet Icons"loading="lazy"&gt;&lt;figcaption&gt;OptionSet Icons&lt;/figcaption&gt;&lt;/figure&gt;
&lt;h3 id="pcf-gallery"&gt;&lt;strong&gt;PCF Gallery&lt;/strong&gt;
&lt;/h3&gt;&lt;a class="link-card" href="https://pcf.gallery/optionset-icons/" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://itmustbecode.com/linkcards/97764ce51cc19482.png" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;OptionSet Icons&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;A control to transform an OptionSet field into a configurable Fabric-UI Choice group with Icons, compatible with up to five options. Optionset labels are used as icon labels, list of icons available here.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;pcf.gallery&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;
&lt;h3 id="github-repo"&gt;&lt;strong&gt;GitHub Repo&lt;/strong&gt;
&lt;/h3&gt;&lt;a class="link-card" href="https://github.com/drivardxrm/IconOptionSet.PCF" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://itmustbecode.com/linkcards/175a359e0a806477.png" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;drivardxrm/IconOptionSet.PCF&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;Display an Optionset with Office UI Fabric icons. Contribute to drivardxrm/IconOptionSet.PCF development by creating an account on GitHub.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;github.com&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;</description></item><item><title>Two Option Icons PCF</title><link>https://itmustbecode.com/two-option-icons-pcf/</link><pubDate>Wed, 20 Nov 2019 22:29:03 +0000</pubDate><guid isPermaLink="false">https://itmustbecode.com/two-option-icons-pcf/</guid><description>&lt;figure&gt;&lt;img src="./image-5.png" alt="This image has an empty alt attribute; its file name is image-5.png"loading="lazy"&gt;&lt;figcaption&gt;This image has an empty alt attribute; its file name is image-5.png&lt;/figcaption&gt;&lt;/figure&gt;
&lt;h3 id="pcf-gallery"&gt;&lt;strong&gt;PCF Gallery&lt;/strong&gt;
&lt;/h3&gt;&lt;a class="link-card" href="https://pcf.gallery/two-options-icons/" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://itmustbecode.com/linkcards/7099ac2df5e3ed9f.png" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;Two Options Icons&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;A control to transform a Two Options field with Fabric-UI Icons. List of icons available here.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;pcf.gallery&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;
&lt;h3 id="github-repo"&gt;&lt;strong&gt;GitHub Repo&lt;/strong&gt;
&lt;/h3&gt;&lt;a class="link-card" href="https://github.com/drivardxrm/IconTwoOption.PCF" target="_blank" rel="nofollow noopener"&gt;
&lt;img class="link-card__image" src="https://itmustbecode.com/linkcards/a3475f7b305d128f.png" alt="" loading="lazy"&gt;
&lt;span class="link-card__content"&gt;
&lt;strong class="link-card__title"&gt;drivardxrm/IconTwoOption.PCF&lt;/strong&gt;
&lt;span class="link-card__summary"&gt;Contribute to drivardxrm/IconTwoOption.PCF development by creating an account on GitHub.&lt;/span&gt;
&lt;span class="link-card__domain"&gt;github.com&lt;/span&gt;
&lt;/span&gt;
&lt;/a&gt;</description></item></channel></rss>