我试图制作一个WPF应用程序来模拟和可视化确定性有限自动机。我创建了c#库进行模拟,现在我想在我的WPF应用程序中使用它。我希望它能像这样工作:
MainWindow 显示并且用户可以指定自动机参数:状态数,字母,接受状态,开始状态,然后当用户点击生成按钮时,新的对话框窗口显示。
在新的对话框窗口中应该是用户可编辑的整数数组,这将代表转换功能。数组的大小将根据状态和字母符号数而变化。
当用户单击“确定”按钮时,将关闭对话框窗口,并将创建DeterministicFiniteAutomaton
类的新对象。
之后,用户可以点击Visualize
按钮,并显示新的可视化窗口,以便可视化已创建对象的工作。
我的问题是:
1)如何将状态编号和字母符号传递给对话框窗口?
2)如何从对话窗口中获取用户编辑的整数表?
3)我应该在哪里存储DeterministicFiniteAutomaton
类的对象,以便将一个自动机分配给一个visualization window
?
答案 0 :(得分:0)
1)对话框窗口的构造函数可以接受参数。将您想要的任何内容从 MainWindow 传递到对话框窗口。
DialogWindow dialogwindow = new DialogWindow(params);
dialogwindow.ShowDialog();
2)在DialogWindow中,用Property
公开整数数组。
public int[] EditedValues { get; private set;}
并在 MainWindow 中访问
int[] editedValues = dialogwindow.EditedValues;
3)与2)相同,在DialogWindow中,将DeterministicFiniteAutomaton
公开为属性。