修复DataZoom的start和end在代码动态修改时图表不刷新的问题

This commit is contained in:
monitor1394
2024-11-13 08:40:56 +08:00
parent e6c68be728
commit 7fb0765c6c
2 changed files with 9 additions and 0 deletions

View File

@@ -77,6 +77,7 @@ slug: /changelog
## master ## master
* (2024.11.13) 修复`DataZoom`的start和end在代码动态修改时图表不刷新的问题
* (2024.11.05) 修复`Title`设置隐藏后运行还显示的问题 * (2024.11.05) 修复`Title`设置隐藏后运行还显示的问题
* (2024.11.01) 完善`website`中英文文档 * (2024.11.01) 完善`website`中英文文档

View File

@@ -17,6 +17,8 @@ namespace XCharts.Runtime
private bool m_CheckDataZoomLabel; private bool m_CheckDataZoomLabel;
private float m_DataZoomLastStartIndex; private float m_DataZoomLastStartIndex;
private float m_DataZoomLastEndIndex; private float m_DataZoomLastEndIndex;
private float m_LastStart;
private float m_LastEnd;
public override void InitComponent() public override void InitComponent()
{ {
@@ -62,6 +64,10 @@ namespace XCharts.Runtime
{ {
CheckDataZoomScale(component); CheckDataZoomScale(component);
CheckDataZoomLabel(component); CheckDataZoomLabel(component);
if (m_LastStart != component.start || m_LastEnd != component.end)
{
UpdateDataZoomRange(component, component.start, component.end);
}
} }
public override void DrawUpper(VertexHelper vh) public override void DrawUpper(VertexHelper vh)
@@ -404,6 +410,8 @@ namespace XCharts.Runtime
dataZoom.start = start; dataZoom.start = start;
if (!dataZoom.endLock) if (!dataZoom.endLock)
dataZoom.end = end; dataZoom.end = end;
m_LastStart = dataZoom.start;
m_LastEnd = dataZoom.end;
if (dataZoom.realtime) if (dataZoom.realtime)
{ {
chart.OnDataZoomRangeChanged(dataZoom); chart.OnDataZoomRangeChanged(dataZoom);