C# interfejs po funkcji Main()

0

Witajcie. Chcę napisać aplikację w WPF rysującą grafy. Korzystam z biblioteki Graph#.

Obecnie graf jest rysowany bezpośrednio po uruchomieniu aplikacji. Chcę aby działo się tak po naciśnięciu przycisku.

Kiedy funkcja CreateGraphToVisualize() jest umieszczona w Main() - graf się pojawia. Kolejność wykonywania jest następująca:

  1. public MainWindow()
  2. private void CreateGraphToVisualize()
  3. public IBidirectionalGraph<object, IEdge<object>> GraphToVisualize
  4. Odpala się okno i widać graf

Kiedy funkcja rysująca jest wywoływana po naciśnięciu buttona, interfejs jest użyty od razu po Main() i nie ma grafu. Kolejność wygląda tak:

  1. public MainWindow()
  2. public IBidirectionalGraph<object, IEdge<object>> GraphToVisualize
  3. Odpala się okno bez grafu
  4. Klikam "Dodaj wierzchołek"
    5.Wchodzi do private void button_Click(object sender, RoutedEventArgs e)
  5. Wykonuje się CreateGraphToVisualize();
  6. Ponownie widzę puste okno

Moje pytanie jest następujące: Dlaczego interfejs jest używany od razu po Main() i jak ewentualnie mógłbym to zmienić aby był on używany po funkcji CreateGraphToVisualize()?

Będę wdzięczny za jakiekolwiek uwagi/wskazówki.

Kod programu:

http://pastebin.com/s4Xhc14U

0

A w XAML-u gdzieś nie używasz właściwości GraphToVisualize?

0
ness napisał(a):

A w XAML-u gdzieś nie używasz właściwości GraphToVisualize?

Tutaj jest kod xaml: http://pastebin.com/h3SqbkSH

Czy może chodzić o pierwsza linie, gdzie jest <Window x:Class="Graf.MainWindow" - właśnie MainWindow?

0

Problem rozwiązany, wystarczyło dopisać graphLayout.Graph = _graphToVisualize w button_Click.

1 użytkowników online, w tym zalogowanych: 0, gości: 1