尝试将对象列表绑定到WPF datagrid控件并看到空行
我被困住了,需要一些帮助。我花了一整天的时间试图解决这个问题。我读过很多关于如何做到这一点的例子,看起来我做得很正确,但显然我遗漏了一些东西。我有一个空白表单,有一个按钮和一个数据网格。单击按钮时,我希望将点列表加载到datagrid控件中。必须加载数据,因为我在网格中看到三个空行,没有标题,但没有数据。救命啊!谢谢尝试将对象列表绑定到WPF datagrid控件并看到空行,wpf,vb.net,datagrid,wpfdatagrid,Wpf,Vb.net,Datagrid,Wpfdatagrid,我被困住了,需要一些帮助。我花了一整天的时间试图解决这个问题。我读过很多关于如何做到这一点的例子,看起来我做得很正确,但显然我遗漏了一些东西。我有一个空白表单,有一个按钮和一个数据网格。单击按钮时,我希望将点列表加载到datagrid控件中。必须加载数据,因为我在网格中看到三个空行,没有标题,但没有数据。救命啊!谢谢 Class MainWindow Class Point Public Inc As String Public AZ As String Public
Class MainWindow
Class Point
Public Inc As String
Public AZ As String
Public MD As String
Public TD As String
End Class
Private Sub Button_Click(sender As Object, e As RoutedEventArgs)
Dim mySurvey As New List(Of Point)
Dim myPoint1 As New Point
Dim myPoint2 As New Point
myPoint1.AZ = "1"
myPoint1.Inc = "2"
myPoint1.MD = "100"
myPoint1.TD = "98"
myPoint2.AZ = "10"
myPoint2.Inc = "20"
myPoint2.MD = "1000"
Point2.TD = "980"
mySurvey.Add(myPoint1)
mySurvey.Add(myPoint2)
dgSurvey.ItemsSource = mySurvey
End Sub
末级
XAML
为了使绑定工作,您应该在Point类中定义属性,而不是公共字段。 这在以下文件中明确说明: 用作绑定的绑定源属性的属性必须是公共的 类的属性。无法创建显式定义的接口属性 出于绑定目的访问,也不能是受保护的、私有的、内部的, 或没有基本实现的虚拟属性 不能绑定到公共字段
你能分享你的xaml吗?只是把它添加到了问题中。谢谢你,我认为你应该在Point类中定义属性,而不是公共字段,这样才能起作用。非常感谢。问题解决了。作为答案发布,我会选择它。
<Window x:Class="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 Content="Button" HorizontalAlignment="Left" Height="28" Margin="45,30,0,0" VerticalAlignment="Top" Width="57" Click="Button_Click"/>
<DataGrid x:Name="dgSurvey" HorizontalAlignment="Left" Margin="45,78,0,0" VerticalAlignment="Top" Height="172" Width="275"/>
</Grid>