InnerLoop: NavigationView build broke in recent PR
See original GitHub issueWith recent PR https://github.com/microsoft/microsoft-ui-xaml/pull/3602, building the NavigationView in the inner loop now fails because some of the added test code now uses the WinUI RadioButtons control. The RadioButtons
control, however, is not recognized, if it isn’t part of the inner loop build process.
I see the following potential solutions here. We could either
- include the RadioButtons control in the list of controls/elements which are included automatically in an innerloop solution build (like the SplitButton control or DropDownButton control so that the RadioButtons control is available to all future test pages. This would, however, increase the compile time for the innerloop solution across the board and building the innerloop solution is meant to be both fast and resource-friendly compared to the full solution
- add a condition to the FeatureAreas file to build the RadioButtons control only when building the NavigationVew control or when it is explicitly listed in the InnerLoopAreas file (though the NavigationView as such is not dependent on the RadioButtons control and this would be a dependency introduced solely through the test UI)
- modify the existing NavigationView test to use the OS XAML RadioButton control only (for example put inside a StackPanel). This would not require a lot of extra work (one can listen to the Checked/Unchecked events for each RadioButton) and would not increase the compilation time in the innerloop solution. We would als be independent of potential future test code changes (which could change the test UI elements) since the RadioButtons control is not required for the NavigationView control per-se.
@ranjeshj @chingucoding as a FYI.
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (5 by maintainers)
Top Results From Across the Web
T
Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported. - uno/src/Uno.
Read more >Controls Triage
ListView SelectedValue/SelectedValuePath binding breaks when the current SelectedItem is removed from the ItemsSource #251 opened by shufan
Read more >Chaomei Chen - Information Visualization
Chaomei Chen captures the spirit of this emerging academic discipline in this second edition and cleverly uses knowledge domain visualization to trace the....
Read more >Category Name - RSSing.com
I was checking out daily builds of the new open source .NET Core System.Device.Gpio that lets me use C# to talk to the...
Read more >Read more
Are you new to Blazor and want to build your first Blazor application? ... the Blazor Power Hour, Ed takes a look at...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
I personally try to use OS XAML where possible in my test UI because I would gladly take 1-2 more minutes development time (such as adding the different event handlers to each RadioButton) when in return I get some 15 second boost for each clean innerloop build. (I am almost exclusively using the innerloop solution so I quite often do clean innerloop builds. Other folks might not be affected by that depending on their use of innerloop vs full solution.) Of course, as I said earlier, if WinUI controls will provide “considerable” benefits in the test UI in cases for me, I would use them.
Either way, it is acceptable to me to add the RadioButtons control to the NavigationView build in the innerloop. Besides, in this case, we also benefit from both controls sharing a dependency - the ItemsRepeater control - so the additional clean build time is not increased by the full RadioButtons control build time anyway).
Adding the dependency seems like the right thing to do here. Thanks