I have a window which I have been designing.
At some point, when viewed in the designer, the window header disappeared and has been replaced by a red triangle with an exclamation mark in it (see attachment).
There are no errors shown in VS and no tooltip for the triangle and I can still edit the window and its associated controls. The application still runs correctly and the window header renders perfectly. I’ve closed VS and restarted and the triangle is still there.
What is the triangle trying to tell me?
Using custom font with the designer and Edge seems to be fixed in development. It was the woff2 format that chocked IE and Edge. WJ-8276 and WJ-8275.
The best way to get the resources from google fonts is to use http://www.localfont.com/
Make sure that the sources array has woff for IE and Edge and woff2 for Chrome, although woff works in Chrome as well.
I don’t think the designer is liking the data urls. The triangles are still appearing when selecting my theme.
Nevermind I think I figured it out just went to this website. Put the link to the google font and generated a data uri
And I wanted to add that all the designer related code and work is obviously not needed and not even deployed at runtime. It’s all in Wisej.Core.Design and Wisej.Web.Design which are installed in the GAC and not even present in the project.
And from the screenshot I can see that you are using the material-3 theme. Which downloads the roboto font from google and it’s slow to download install in the renderer. I noticed that issue as well. If you open the .theme file and remove the roboto font the problem should disappear.
Sorry for the long answer, but I like to talk about the technology behind Wisej 🙂
Since html rendering (and svg rendering) is an intensive task and central to Wisej unique feature set, we built a more or less self-healing system that manages a pool of renderers that are periodically cleared and are observed for responsiveness. We use IE OLE’s IViewObject, which is very fast and built-in windows – plus a lot more code to queue tasks, paint over the client and non-client area, set the emulation level, interact with Visual Studio, load local and remote resources, etc. Wisej uses it through IWebBrowserRenderer which can be changed, in fact we also have (had) the same implementation based on chromium. But chromium turned out to be extremely slower than IE when used as a renderer, and about 60M more to download.
Usually that warning is harmless, you can press the refresh button in the toolbox at the bottom of the designer to refresh the page. In some cases closing the designer window and reopening also clears the issue since some code/images maybe cached after the first try.
In some cases you may see a control that is not rendered completely (an icon is missing, for example), which is also fixed with a refresh. Sometimes some controls are able to inform the renderer that they need a refresh and you will see the warning disappeare by itself. Some other controls may ask the designer to change their size since we are able to accurately measure the control only after fully rendering the html.
Take the tabcontrol, for example, if you add many tabs and click on the right arrow to scroll, the renderer has to wait for the scroll operation to end to take the bitmap and pass it to the visual studio designer. Also, the tab control feeds back to the designer all its internal metrics to be able to track the mouse on the designer.
There will be a section only about this in the documentation, which is a priority.