Итак, мой графический интерфейс разделен на две половины, каждая из которых использует один и тот же класс, умноженный на два, так как обе выполняют одно и то же: каждый рисует свой собственный график, поэтому они могут сравнивать два разных процесса.
Чтобы понять, как рисовать график, я сначала хотел сделать что-то простое и просто жестко запрограммировать две строки. Обратите внимание, что я не использую XAML, я откладываю это до тех пор, пока не стану достаточно гибким с C #, и яЯ привык делать GUI таким образом.Еще одна вещь, которую я сделал, - это изменить цвет холста, и, как оказалось, он там, где он должен быть.Как бы то ни было, я просто создал такую строку:
Line lne = new Line();
lne.X1 = 10;
lne.X2 = 130;
lne.Y1 = 10;
lne.Y2 = 100;
graphCanvas.Children.Add(lne);
Во всем моем GraphComparisonClass это выглядит так:
public class AlgorithmRuntimeView: StackPanel
{
public GraphComparison()
{
this.Orientation = Orientation.Vertical;
this.HorizontalAlignment = System.Windows.HorizontalAlignment.Center;
Canvas graphCanvas = new Canvas();
graphCanvas.Background = new SolidColorBrush(Colors.LightGray);
graphCanvas.Height = 400;
graphCanvas.Width = 390;
Line lne = new Line();
lne.X1 = 10;
lne.X2 = 130;
lne.Y1 = 10;
lne.Y2 = 100;
graphCanvas.Children.Add(lne);
Line lnje = new Line();
lne.X1 = 150;
lne.X2 = 130;
lne.Y1 = 105;
lne.Y2 = 10;
graphCanvas.Children.Add(lnje);
this.Children.Add(algorithmListMenu);
this.Children.Add(graphCanvas);
}
public void drawPoint(int time, int size)
{
//convert time and size to coordinates
}
}
Я ожидаю, что строки будутрасположены на холсте, их нет.Я делаю что-то в корне неправильно, или я сделал небольшую ошибку?Я бы предположил, что я неправильно использую координаты, но я не знаю.