我想从数据库中自动加载一些数据,以便在加载新窗口时填充一些文本框和组合框。
例如,当我单击while read line
do
ssh $line <<'EOF' &
command
command
EOF
done < list.txt
中的按钮时,window1将显示一个新窗口window1
并将window2
传递给ID
(查询数据库时需要id) 。
我怎么能这样做?
谢谢,
答案 0 :(得分:1)
1)在窗口中创建ui元素
2)创建一个包含必填字段的模型类。
3)点击时 window1中的按钮将id传递给下一个窗口的构造函数。
4)。使用id根据您的需要查询数据库。获取结果 并将字段绑定到ui元素值。
5)。这些数据库查询,所有都可以写在你的内部 构造函数或窗口加载事件。
您可以使用MVVM完成此操作。无需编写过多的代码来将值设置为ui。
答案 1 :(得分:0)
答案 2 :(得分:0)
这只是您可以做的一个非常简单的例子:
<强> MainWindow.xaml 强>
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Button Name="btn1" Click="btn1_Click" Content="Button" Margin="10,10,361,283"></Button>
</Grid>
</Window>
<强> MainWindow.xaml.cs 强>
private void btn1_Click(object sender, RoutedEventArgs e)
{
Window2 win2 = new Window2(1);
win2.Show();
}
<强> Window2.xaml 强>
<Window x:Class="WpfApplication1.Window2"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window2" Height="300" Width="300">
<Grid Margin="0,0,170,249">
<TextBox Name="txtBox1" Margin="18,160,-18,-173"></TextBox>
<TextBox Name="txtBox2" Margin="18,119,-18,-134"></TextBox>
<TextBox Name="txtBox3" Margin="18,76,-18,-93"></TextBox>
<TextBox Name="txtBox4" Margin="18,36,-18,-50"></TextBox>
</Grid>
</Window>
<强> Window2.xaml.cs 强>
public partial class Window2 : Window
{
public Window2(int Id)
{
InitializeComponent();
ReadDataFromDB(Id);
}
public void ReadDataFromDB(int Id)
{
//read your data
txtBox1.Text = "Some value 1";
txtBox2.Text = "Some value 2";
txtBox3.Text = "Some value 3";
txtBox4.Text = "Some value 4";
}
}