Official Content

Returns a URI of the Image object that can be interpreted by other layers or components of the generated application.

Syntax

ImageName.GetInternalURI()

Where:
ImageName
    Image object defined inside the Knowledge Base

Type Returned:
Sting

Scope

Objects: Image object 
Generators:  .NETJava, AndroidApple

Description

The returned string is a URI in the form of 'gximage://<image name>', where image name is the Qualified Name of an Image object.

This method is especially – and not exclusively – useful when you need to assign a reference of an Image Object to a variable, and that Image varies by Style, Language, Density, Layer, or Design System Options in runtime.

The client side of the applications may need to show the right image depending on the context information (ie: Design System option Dark or Light) and this context may not be available in every layer of the application. So, when you need to get a reference of the image in a moment or layer where not all the context information is available, this method is useful.

In those scenarios, the use of this method will provide better results than the use of the FromImage method or Link method.

Sample

Suppose GeneXusLogo is an image that varies by Design System Tokens Options Dark and Light and you want to show the corresponding in the UI Control &MyImage, depending on the context.

In that case, program the following:

Event 'MyEvent'
   &MyImage.ImageURI = image:GeneXusLogo.GetInternalURI()
EndEvent

A variation of this case in a scenario with a Data Provider object, could be the following:

Create a Data provider called 'GetLogo' that returns an SDT with a 'Logo' item

SDTLogo
{
    Logo
    {
        ImageUri = image:GeneXusLogo.GetInternalURI()
    }
}

And then use that in a Panel

Event 'MyEvent'
   &SDTLogo = &GetLogo()
   &MyImage.ImageURI = &SDTLogo.Logo
EndEvent

See Also

Last update: February 2024 | © GeneXus. All rights reserved. GeneXus Powered by Globant