Insert and manage images in displays.
Reference → Modules → Displays → UI → Client Settings | Draw | Images | Layouts | List | Localization | Symbols | Themes | Units Conversion
Display Images provides:
Once imported, images become part of the solution database, eliminating dependency on external files.
Format | Extension | Use Case |
---|---|---|
Bitmap | .bmp | Uncompressed images |
GIF | .gif | Simple animations |
Icon | .ico | Application icons |
JPEG | .jpg | Photographs |
SVG | .svg | Scalable vectors |
PNG | .png | Transparent graphics |
TIFF | .tiff | High-quality images |
WDP | .wdp | HD Photo format |
Images are embedded in the project database.
Apply images as brushes:
Mode | Description | Use Case |
---|---|---|
None | Original size | Icons, logos |
Fill | Fill container | Backgrounds |
Uniform | Maintain aspect ratio | Photos |
UniformToFill | Fill and crop | Wallpapers |
Property | Description | Editable |
---|---|---|
Name | Resource identifier | Yes |
Description | Image documentation | Yes |
Folder | Organization path | Yes |
ResourceType | File type | Read-only |
Dimension | Width x Height | Read-only |
Size | File size in bytes | Read-only |
/Backgrounds
/Screens
/Popups
/Icons
/Navigation
/Equipment
/Logos
/Company
/Products
csharp
// Change image source
@Display.MyImage.Source = "NewImageName";
// Toggle between images
if (condition)
@Display.Background.Fill = "Image1";
else
@Display.Background.Fill = "Image2";
csharp
// Use image in color dynamics
@Display.Rectangle1.Fill = "ImageBrush:Logo";
// Conditional image fill
@Display.Shape.Fill = @Tag.State == 1 ?
"ImageBrush:ActiveImage" :
"ImageBrush:InactiveImage";
xml
<Page Background="ImageBrush:PlantLayout">
<!-- Display content -->
</Page>
csharp
// Motor image based on state
string motorImage = @Tag.Motor.Running ?
"Motor_Running" : "Motor_Stopped";
@Display.MotorImage.Source = motorImage;
xml
<Button>
<Image Source="Icon_Home" Width="32" Height="32"/>
</Button>
Image not displaying:
Poor quality:
Memory issues:
Update not reflecting:
Create reusable image sets:
csharp
public class ImageLibrary
{
public static string GetStateImage(int state)
{
return state switch
{
0 => "State_Idle",
1 => "State_Running",
2 => "State_Alarm",
_ => "State_Unknown"
};
}
}
csharp
// Load image from database
byte[] imageData = @Dataset.Query.Images.GetImage(id);
@Display.DynamicImage.LoadFromBytes(imageData);