#silverlight #charts #padding
#silverlight #Диаграммы #заполнение
Вопрос:
У меня есть эта линейная диаграмма, которая заполняется во время выполнения, то есть программно. Вот как это выглядит сейчас:
Я хотел бы добавить какое-то «дополнение» к линейному ряду, чтобы оно выглядело лучше. Это выглядело бы примерно так: (фотошоп)
или просто:
Я думаю, что еще больше заполнения было бы еще лучше. Вроде как финансы.я думаю, дао графиках. Как бы я это сделал?
Ответ №1:
Принимая ответ @vorrtex немного дальше, вы могли бы связать значения Minimum
и Maximum
по обеим осям для просмотра свойств модели (при условии, что вы используете MVVM) и после вычисления точек линейного ряда обновить эти значения. Таким образом, ваш XAML станет:
<chart:Chart.Axes>
<chart:LinearAxis Orientation="X" Minimum="{Binding XMinimum}" Maximum="{Binding XMaximum}" />
<chart:LinearAxis Orientation="Y" Minimum="{Binding YMinimum}" Maximum="{Binding YMaximum}" ShowGridLines="True" />
</chart:Chart.Axes>
Комментарии:
1. Я довольно начинающий программист. Я действительно не знаю MVVM. Не могли бы вы немного уточнить? кроме того, проверьте мой второй ответ ^^
2. @JelloCaca — Вопросы и ответы на самом деле не лучшее место для объяснения этого материала. Вы на правильном пути, но вам нужно реализовать
INotifyProperyChanged
интерфейс. Я предлагаю вам выполнить некоторые поисковые запросы (не только по переполнению стека) о Model-View-ViewModel. В MSDN есть несколько отличных начальных сообщений.
Ответ №2:
Просто явно укажите оси и задайте Minimum
и Maximum
свойства.
Для вашего примера я бы сделал это так:
<chart:Chart>
<!-- ... -->
<chart:Chart.Axes>
<chart:LinearAxis Orientation="X" Minimum="-0.5" Maximum="3.5" />
<chart:LinearAxis Orientation="Y" Minimum="0" Maximum="1200" ShowGridLines="True" />
</chart:Chart.Axes>
</chart:Chart>
Ответ №3:
@Крис, я на правильном пути с этим?
public class Xorientation
{
private int _XMinimum;
private int _XMaximum;
public Xorientation(int Xminimum, int Xmaximum)
{
_XMinimum = Xminimum;
_XMaximum = Xmaximum;
}
public int XMinimum
{
get { return _XMinimum; }
set { _XMinimum = value; }
}
public int XMaximum
{
get { return _XMaximum; }
set { _XMaximum = value; }
}
}