Teniendo una estructura como esta:
En el evento Button1.Pressed puedes poner este código:
Var js() As String
js.Add("Chart.helpers.each(Chart.instances, (instance) => {")
js.Add(" var parent = instance.canvas.closest('.XojoCharts').id || '';")
js.Add(" if (parent === '" + Chart1.ControlID + "') {")
js.Add(" XojoWeb.session.storage.setItem('chart-png', instance.toBase64Image(), true);")
js.Add(" XojoWeb.session.storage.getItem('chart-png', true);")
js.Add(" }")
js.Add("});")
ExecuteJavaScript(String.FromArray(js))
Y en Session.RequestedData:
Select Case Key
Case "chart-png"
Var imageData As String = DecodeBase64(Value.Replace("data:image/png;base64,", ""))
WebPage1.ImageViewer1.Picture = New WebPicture(imageData, "chart.png")
End Select
