-
What would you like to be addedI have spent close to 18 years developing WPF applications. I have tried hard to make Maui work, but alas, even after two-plus years, it is still not ready and I'm doubtful it ever will be. I have struggled to generate a purely empty Uno application. I have reported three issues, #17732, #17733, and #17734, which are the results of trying to get a truly empty solution upon which to build my knowledge. I find it to be of no help getting an install with a populated App.xaml/App.xaml.cs file and the Main and Second pages because there is no clear way of how these are constructed. Even looking at the tutorials does not make it clear. What I would find helpful is a stepwise tutorial on how to gen up a new Uno solution from scratch. First, you would explain what goes into App.xaml and why. Then you would explain how to add a blank first page and what to add to it to get the app up and running. I have always developed apps using XAML so making the switch to C# Markup is something I have wanted to do because I agree that it makes the items that were once developed in XAML more compact and provide more control of how conditions affect the flow.
Once the basics are understood, it becomes easy to simply create a page and the code-behind logic and begin being productive far more rapidly than having template code provided which one takes for granted without truly understanding the linkage between all the moving parts. Why is this neededI just need my learning to be facilitated by snapping the Lego blocks together myself to see how things are assembled. For which platformWebAssembly, Android, iOS, Mac Catalyst, Skia (Linux X11), Skia (macOS), Skia (Linux Framebuffer), Skia (GTK) Anything else we need to know?No response |
Beta Was this translation helpful? Give feedback.
Replies: 5 comments 9 replies
-
It was not supposed to be opened as an issue... Don't now how it happened... |
Beta Was this translation helpful? Give feedback.
-
UPDATE: I tried to create an "empty" solution by manually entering the switches to the
but it complained about the list of cultures. I tried many variations on the switch without success. I tried bars ("|"). I tried commas. I tried enclosing each culture in quotes: "ar","cs". I tried -cultures=list ... and nothing worked. I did get this command to work:
What was wrong with the original command? |
Beta Was this translation helpful? Give feedback.
-
It's important to know that Uno Platform is based off of WinUI, and you can find everything you need for navigation and pages there or there.
This is pretty close to the same as above. The APIs are ones coming from WinUI and we're relying on Microsoft's documentation where it makes sense. Now, I understand that having a basic walkthrough of the app would be of interest and knowing what you're having difficulties grasping in the current structure would be interesting to have in this particular solution structure page. Could you tell us more? |
Beta Was this translation helpful? Give feedback.
-
Could you give an example of what you're looking for? |
Beta Was this translation helpful? Give feedback.
-
When I developed WPF applications, I know there was a Learn.Microsoft.com page somewhere where it broke the windows structure down and related it to components in the apps definition files. I looked for it, but could not find it. Some things I did find were items like this: Overview of WPF windows and this: Desktop Guide. I realize this only deals with WPF on Windows only and is not cross-platform at all, but the diagram I remember broke a window, its chrome, and its components down and showed how those things could be overridden by creating custom XAML, but this would be invaluable for all of the platforms. For instance, when implement something for macOS, how can you affect the status bar at the top of each app and what has to be done to affect it. If you want to do "X", then change "this" in the common code, or change "this" in the platform code and where in the code to do it. I am looking at how the different styles are added to the Resources.Build command to merge various dictionaries together. Knowing the "internals" of a step-wise recipe that would say these are all the minimum things that belong in the App.xaml.cs file, in what order, if that is critical, and what are some of the optional things that can be added and what they would affect. When I created custom chrome for my windows, I had to do "this" to the app.xaml file, "this" in the mainwindow.xaml file, and "this" in the mainwindowviewmodel.cs to get a foundation upon which to build the app. I used to use whatever the first attempt to decouple all of the components in WPF prior to Prism. How to set up regions, navigation, etc. The brain cell where the name of this first framework (SCC-something-or-other) is long gone, but the Prism docs went into great detail in documenting all of the moving parts. And documenting all of this requires a ton of examples. I detest looking at documentation for an API and it gives a one line, lame sentence of what it is. Duh! That is easy. When I first started developing software back in 1984, it was on a VAX/VMS 750, but the doc set for VMS (it used to be called the Orange Wall, then DEC changed the color of the 20 or 30 three inch three ring binders to grey) was phenomenal and I have never seen any documentation like it since. Their Run Time Library binder describe each API in excruciating detail and gave detailed examples in C of how to use each API. While it would take an army of technical writers a year to do that for Uno and I would not expect it, going from a trivial explanation where nothing can be gleaned from it to a masterpiece where you could OCR the document and develop a system would be the Holy Grail. Of course, us silly end-users expect the world and you might be able to provide a small patch of dirt because that is all you could provide with the resources you have, but you see where I am going with this. You should see my code. I document EVERYTHING because someday I want to retire, but I want my applications to live on!! The only way for that to happen is to leave a map for the next guy who sits in my chair! I can see why this was moved to a discussion! ;-) |
Beta Was this translation helpful? Give feedback.
@francoistanguay Thanks for this response. I congratulate you on the Uno Platform overall. It has a steep learning curve, but I am making it work!
Through trial and error, I have created many new projects just to see how they're configured based on the options I selected in the solution wizard. I feel like I have come to understand the process and now have a working solution that fulfills my desires. I am off and running and am liking what I am seeing! Good work Uno Team!