我有数据网格,有2列
<DataGrid AutoGenerateColumns="False" Height="144" HorizontalAlignment="Left" Margin="12,12,0,0" Name="dataGrid1" VerticalAlignment="Top" Width="415" >
<DataGrid.Columns>
<DataGridTextColumn Header="Name" Width="300"/>
<DataGridTextColumn Header="Price" Width="100" />
</DataGrid.Columns>
</DataGrid>
然后我从.txt文件加载数据 {苹果12 香蕉30}
while((line = sr.ReadLine()) != null)
{
var mass = line.Split(' ');
dataGrid1.Items.Add(mass);
}
但我添加了2行,没有数据。 (在调试中我看到:质量[0] - 苹果,质量[1] - 12)
答案 0 :(得分:1)
我相信这里发生的事情是数据网格正在看到一个对象[]而不是它可以绑定的东西。尝试创建一个绑定到的对象并用数据填充它。这还有一个额外的好处,就是让其他人阅读它时,代码更加清晰。
<DataGridTextColumn Header="Name" Width="300" Binding="{Binding Name}"/>
<DataGridTextColumn Header="Price" Width="100" Binding="{Binding Price}"/>
while((line = sr.ReadLine()) != null)
{
var mass = line.Split(' ');
var newProduct = new Product
{
Name = mass[0].ToString(),
Price = Convert.ToInt32(mass[1])
};
dataGrid1.Items.Add(newProduct);
}
public class Product
{
public string Name { get; set; }
public int Price { get; set; }
}
答案 1 :(得分:0)
使用daniellepelley解决方案并添加:
<DataGridTextColumn Header="Name" Width="300" Binding="{Binding Name}"/>
<DataGridTextColumn Header="Price" Width="100" Binding="{Binding Price}"/>