假设您的数据库返回 ID、名称和位置作为变量,您可以使用 ObservableCollection 来填充,例如一个数据网格。
最初创建一个存储 Employee 数据的类。
public class Employee
{
public int ID{get; set;}
public string name{get; set;}
public string position{get; set;}
}
接下来在你的 MainWindow 中定义一个依赖属性(Employees)。
public ObservableCollection<Employee> Employees
{
get{return (ObservableCollection<Employee>) GetValue(EmpProperty);}
set{SetValue(EmpProperty, value);}
}
public static readonly DependencyProperty EmpProperty = DependencyProperty.Register
(
"Employees", typeof(ObservableCollection<Employee>),
typeof(MainWindow),
new PropertyMetadata(null)
);
在您的 MainWindow 的另一个地方,您会得到查询结果;为简单起见,我假设三个数组 ID_Array、name_Array 和 position_Array 在我的示例中存储计数元素
...
Employees = new ObservableCollection<Employee>
{
for(int i = 0, i < count; i++)
{
new Employee
{
ID = ID_Array[i],
name = name_Array[i],
position = position_Array[i];
};
}
}
...
PART_DataGrid.ItemsSource = Employees;
最后在你的 xaml 文件中声明你的 DataGrid
...
<DataGrid x:Name="PART_DataGrid", AutogenerateColumns="false">
DataGrid.Columns>
<!-- Define headers as needed -->
<DataGridTextColumn Header="Employee ID" Binding="{Binding ID}" />
<DataGridTextColumn Header="Name" Binding="{Binding name}" />
<DataGridTextColumn Header="Position" Binding="{Binding position}" />
</DataGrid.Columns>
</DataGrid>
我还没有测试过代码,但我希望它能给你一个关于如何继续的基本想法。基本上它也应该适用于 WinForms。
问候马丁