0

我在以下函数中有一个单列数据表和一个列表框我试图将列表框项目源设置为数据表,但它将行显示为 System.Datarow

Private Sub setghostshopslistitemsource()
        GhostShopsList.Items.Clear()
        Dim con As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & mydocumentddir & "\Settings\Settings.mdb")
        GhostsDatatableda = New OleDbDataAdapter("Select Ghost From GhostsTable", con)
        GhostsDatatableda.Fill(GhostsDatatable)
        GhostShopsList.ItemsSource = GhostsDatatable.DefaultView
    End Sub

那么最后一行有什么问题?数据表看起来像

鬼魂

文本1

文本2

文本 3。. .

我只想在列表框中显示每个文本

使用上面的函数列表框显示

System.Data.DataRow

System.Data.DataRow

System.Data.DataRow

.

.

.

4

2 回答 2

2

这些项目仍然是行,尝试将DisplayMemberPathto设置"[0]"为绑定到第一列值。

于 2012-09-19T19:49:18.100 回答
1

您需要指定行的显示方式。如果您只需要一个文本框,请编写如下内容:

<ListBox>
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Ghost}" />
        </DataTemplate>
    </ListBox.ItemTemplate> 
</ListBox>
于 2012-09-19T19:49:05.233 回答