强制'rallychart'组件重新绘制容器调整大小

时间:2014-01-28 18:39:41

标签: rally appsdk2

我有一个border布局应用于我的应用,其中左(西)面板是可折叠的,右(中)面板包含rallychart组件。这个想法是,当左侧面板折叠时,用户将获得更大版本的图表,因为将有更多区域来绘制它。我遇到的问题是,当左侧面板折叠时,图表不会重绘。这让我感到惊讶,因为如果中心容器以任何其他方式调整大小(窗口大小更改),图表将重新绘制以自动填充更大的容器。

有没有办法可以强制rallychart重绘?也许通过触发窗口大小更改事件触发的相同事件?

2 个答案:

答案 0 :(得分:2)

Rally.ui.Chart包装第三方组件的实例,该组件为底层Highchart对象提供Ext接口。

你可以像这样得到一个参考:

var chartWrapper = chart.down('highchart');

该组件的代码位于此处:https://github.com/RallySoftware/Highcharts_ExtJs_4/blob/master/Chart/ux/HighChart.js

在那里你可以看到它连接了一个调用onResize方法的窗口大小调整的处理程序。即使这是标记为私人的,我认为这应该有用,是你最好的选择。

chartWrapper.onResize();

答案 1 :(得分:1)

看看this question的答案;它可能会让你到达:重新加载商店和刷新图表组件的组合。