【发布时间】:2019-01-06 07:16:10
【问题描述】:
我正在尝试在数据网格中填充我的数据库表。 现在我可以填充它,但这里的问题是它只显示第二行数据。第一行数据未显示在表中。 我仔细检查了我的数据库表,它显示我有 3 行数据,但在数据网格中它只显示 2 行数据。在这里提出问题之前,我在网络上进行了研究,但我无法从网络搜索中找到任何解决方案。
这是我的 xaml 代码:
<Grid Background="#FF006E8C">
<Separator HorizontalAlignment="Left" Height="100" Margin="0,60,0,0" VerticalAlignment="Top" Width="695" FontSize="16" Background="White"/>
<Label x:Name="labelLoginName" Content="Label" HorizontalAlignment="Left" Margin="552,125,0,0" VerticalAlignment="Top"/>
<DataGrid x:Name="userDataGrid" HorizontalAlignment="Left" Margin="35,146,0,0" VerticalAlignment="Top" Height="265" Width="640"/>
</Grid>
这是我的vb代码:
Private Sub Windows_Loaded(sender As Object, e As RoutedEventArgs)
labelLogin = loginName
labelLoginName.Content = labelLogin
Dim query As String
query = "select * from users"
reader = db.QueryCommand(query)
If Not IsNothing(reader) Then
If reader.HasRows() Then
While reader.Read()
userDataGrid.ItemsSource = reader
End While
Else
MessageBox.Show("No data")
End If
Else
MessageBox.Show("Error at reader")
End If
有人可以帮我解决这个问题吗?我是按照 youtube 中本教程视频中的教程完成此操作的:here
Tq。
【问题讨论】:
-
您加载数据的方式并没有真正的意义。您应该创建一个
DataTable,调用它的Load方法并传递数据读取器,然后将DataTable分配给ItemSource。 -
@jmcilhinney 对不起,我听不懂。能给我举个简单的例子吗?
-
如果你不能理解“创建这种类型的对象,调用这个方法,传递这个参数并设置这个属性”,那么你需要花一些时间学习基础知识。这些是任何人都应该能够执行的基本指令。我们不应该每次回答问题时都必须教授基础知识。如果你问别人如何烤蛋糕,他们应该解释如何打开一包面粉并将里面的东西放入碗中。
标签: vb.net wpfdatagrid