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
/Productscsharp
// 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);