我不得不问这个问题。答案应该是显而易见的;但是,我在这里和谷歌搜索无济于事。
我对WPF很新。使用Windows Forms,我记得在Windows之间传递数据非常容易,但我无法用我的WPF应用程序解决这个问题。
我只是为自己构建一个应用程序,允许我访问和插入MySQL数据库中的数据。当我添加了查看表中所有记录的按钮时,我想要打开一个新窗口。该窗口将只显示所有数据;该表将在MainWindow中选择。
我遇到的问题是:我需要为辅助窗口(View)知道选择了哪个表。我可能会使用ListBox控件来选择表,但在一天结束时它确实无关紧要。最终,该值将作为字符串存储在变量中。我需要View窗口才能访问此字符串,以便它知道要查询的表。例如:
//主窗口
private void viewButton_Click(object sender, RoutedEventArgs e)
{
var table = "DS";
View viewWindow = new View();
viewWindow.Show();
}
//查看窗口
private void windowLoad(object sender, RoutedEventArgs e)
{
DatabaseConnection myConnection = new DatabaseConnection();
List<string>[] result = myConnection.Select(table);
text.Text = MainWindow.test + (result[0][0] + " " + result[1][0] + " " + result[2][0] + " " + result[3][0]);
}
我需要做的就是将表的值(根据用户输入在最终应用程序中有所不同)传递给View。例如,我需要它,以便在上面的代码中,将执行以下操作:
List<string>[] result = myConnection.Select("DS");
我觉得这应该是显而易见的,但我不知道如何做到这一点。我真诚地感谢任何帮助。
答案 0 :(得分:3)
您可以通过构造函数传递变量,就像这样
public View(string table)
{
this.table = table;
}
初始化窗口时:
var table = "DS";
View viewWindow = new View(table);
viewWindow.Show();