Включение/отключение легенды с событием клика для Mchart, Rgraph, Telirk Chart

В Fusion Charts есть событие щелчка, которое может переключать видимость легенды. Доступна ли такая же функциональность для MSchart, Rgraph и Telrik? Я не смог понять, как это сделать.


person user1627450    schedule 27.08.2012    source источник


Ответы (1)


Я могу ответить только за MS Chart.

Если вы используете версию Windows Forms, встроенную в .NET 4 Framework, вы можете программно удалить легенду(ы), очистив коллекцию Chart.Legends:

_chart.Legends.Clear();

Это приведет к удалению любого объекта Legend с диаграммы, поэтому, если вы хотите переключаться между отображением и отключением отображения легенды, вам нужно будет сохранить объект Legend локально и Add в коллекции, когда вы захотите снова отобразить его.
(В качестве альтернативы можно также удалить объект Legend из коллекции Legends непосредственно в дизайнере.)

Если вы используете версию WPF, доступную в WPF Toolkit, вероятно, наиболее удобный способ скрыть легенду — установить Width и Height в Chart.LegendStyle равными нулю в XAML:

<chartingToolkit:Chart.LegendStyle>
    <Style TargetType="Control">
        <Setter Property="Width" Value="0"/>
        <Setter Property="Height" Value="0"/>
    </Style>
</chartingToolkit:Chart.LegendStyle>

Для повторного отображения Width и Height необходимо установить ненулевые значения. В отличие от диаграммы Windows Forms, при таком подходе вам не нужно переопределять объект Legend.

person Anders Gustafsson    schedule 27.08.2012