Hi Robert,
please share a sample project so we can see your web.config, default.json etc.
You can also send it to support@wisej.com
Best regards
Frank
Have you read the Web.Config and the commented lines?
Hi Adrian,
please find documentation about mixins here
https://docs.wisej.com/theme-builder/getting-started/edit-a-mixin
Best regards
Frank
You can do this by using a theme mixin.
{
"name": "calendarmixin",
"appearances": {
"datechooser": {
"components": {
"day": {
"states": {
"bolded": {
"styles": {
"css": "{\"font-weight\":\"900 !important\", \"overflow\":\"visible !important\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"}",
"backgroundColor": "lightgreen"
},
}
}
}
}
}
}
}
The theme mixin will only override part of the theme, allowing users to change the theme and always see the green background on bolded dates.
For more information on theme mixins see here: https://docs.wisej.com/theme-builder/getting-started/edit-a-mixin
Hi Brian,
You’re correct that it depends on which environment you’re running in. Hybrid Remote is the remote web server’s file system. Hybrid Local should be the local device’s file system. I haven’t tested the dialog with the local device’s file system so not sure if you’ll run into some issues there. I would think it would be ok if you use the application temp directory (Environment.GetTempPath() or Device.FileSystem.CacheDirectory) as a root.
For the second question, I would recommend sending us an email at support AT wisej DOT com to look at your case further. System.IO.Ports will only work on Windows and macOS. If you’re running on Android and iOS you’ll need to integrate with platform-specific APIs. If it’s a remote app we’ll need to wire the data back to the server.
HTH,
Levie
Some things to consider:
1.The target panel must have AllowDrop = true
this.targetPanel.AllowDrop = true;
2. Even if AllowDrop is enabled, the target must process the drop:
private void TargetPanel_DragOver(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(typeof(Button)))
e.Effect = DragDropEffects.Move;
}
private void TargetPanel_DragDrop(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(typeof(Button)))
{
var btn = (Button)e.Data.GetData(typeof(Button));
this.targetPanel.Controls.Add(btn);
}
}
3. Movable = true is not needed
Movable = true is for moving controls within the same container.
For dragging across containers, you must use DoDragDrop() and handle drop events.
I’ve attached a working sample where you can drag a button from one panel to another, hope this helps!
Can you please include a compliable test case? Delete the bin and obj folders before posting.
Sure. Create a static manager class, fire a static event when the data needs to be updated. The clients simply attach to the static event. When fired they will all be invoked since events are multicast.
When handling the event make sure to use Apolicatio.Update() or RunInContext. You will find more info in the docs.
Create a blank new Wisej-4 project using the provided templates. It will create a sample for you with a couple of clicks. There are also dozens of samples in github.
This is a typical startup.cs with app.UseWisej();
https://github.com/iceteagroup/wisej-examples/blob/4.0/MDIExample/MDIExample/Startup.cs
In your solution there is no main method, the launchsettings doesn’t have true for launching the browser, the start url is wrong, there is no call to app.Run(), the web.config is setup incorrectly for IIS instead of Kestrel (see comments in the one we provide). It doesn’t work with asp.net core regardless of wisej.net. If you copy the correct startup method it will work. We provide everything you need to make it work correctly.
https://dotnettutorials.net/lesson/asp-net-core-main-method/
https://stackify.com/how-to-deploy-asp-net-core-to-iis/ <– this works only when deploying in IIS, doesn’t work with Kestrel. This is all standard asp.net core.
Wisej is a .NET Core middleware, which is typically added using UseWisej() (not AddWisej).
Create a new project using the provided templates and attach a new blank Wisej 4 project (without net48) that runs and opens a simple page with a label and a button. Look at the running project to see the setup, which is all standard net core and asp.net core.
It’s a dependency issue, not a Wisej issue.
The reason why it works in a console app and not in a Wisej app is because of this line here <Project Sdk="Microsoft.NET.Sdk.Web">
What this line does is that it essentially imports what is called a metapackage implicitly, named Microsoft.AspNetCore.App , and Microsoft.Extensions.Logging.Abstractions is part of it.
To fix it, add this to web.config:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
<bindingRedirect oldVersion="1.0.0.0-9.9.9.9" newVersion="8.0.0.2"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="1.0.0.0-9.9.9.9" newVersion="6.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
Hi Ivan,
themes are identical but new themes may only be published for 4.x
Best regards
Frank
This only happens EVERY OTHER TIME. Once the error occurs, I click the Stop Button and immediately restart the app and it ALWAYS runs correctly (the second time).
If this is true: “There is no Application, no Configuration and no Session available when initializing statics.” how is it running correctly the second time?
Screen shot of error. This is the exact line of code where the error occurs EVERY OTHER TIME.
Hi Jean,
we need a test case to see your code. What does “crash” mean? Do you get an exception.
Best regards
Frank
Excellent – defined in the themes file! Thanks so much!
Using an ImageList for single buttons is a neat trick 😉
It can be changed globally via the theme:
Locate the button appearance in your theme and modify the iconSize property within its properties section for the default state:
Code
"button": {
"states": {
"default": {
"properties": {
"iconSize": {
"width": 64,
"height": 64
}
}
}
}
}
It can be changed locally (for a single button) using an ImageList
1. Add an ImageList
component to your form or component.
2. Set the desired ImageSize
property on the ImageList
component (e.g., new Size(32, 32)
).
3.Assign this ImageList
component to the ImageList
property of the Button
control. The button will then automatically resize any image assigned to its Image
property to match the ImageSize
defined in the ImageList
, even if the image is not explicitly added to the ImageList
itself.
See attached sample.
Still facing the same problems. Any other idea? Our solutions are integrated with several independent projects (class libraries, ui projects, etc).
You can simply check the nuget package in the Solution Explorer.
Expand Dependencies, then either net481, net8.0, or net8.0-windows (any of them work). then expand Packages. See screenshot.
OK,
please ignore, found that this issues was fixed in 3.5.18 version