首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Datagrid -不显示任何行

Datagrid -不显示任何行
EN

Stack Overflow用户
提问于 2011-08-13 18:34:58
回答 1查看 452关注 0票数 2

我有一个主窗口,上半部分是数据网格,下半部分是选项卡控件。数据网格包含一个公司列表。下方选项卡控件的其中一个页签包含与上方数据网格中所选公司对应的联系人信息。

在选项卡上,我放置了一个用户控件。

代码语言:javascript
复制
<TabItem Name="pgContactsXCompany">
    <local:ContactsXCompany x:Name="contactsXCompany"/>
</TabItem>

用户控件"ContactsXCompany“上有一个数据网格,其中包含与所选公司相对应的联系人列表。

代码语言:javascript
复制
<dg:DataGrid Name="dgContactsXCompanyList" 
             ItemsSource = "{Binding}"
             AutoGenerateColumns="False"
             IsReadOnly="True">
<dg:DataGrid.Columns>
    <dg:DataGridTextColumn Header="Id" Width="Auto" Binding="{Binding Path=intIDContact}" Visibility="Hidden" />
    <dg:DataGridTextColumn Header="Jméno" Width="Auto" Binding="{Binding Path=txtName}" />
    <dg:DataGridTextColumn Header="Příjmení" Width="Auto" Binding="{Binding Path=txtSurname}" />
    <dg:DataGridTextColumn Header="Pobočka" Width="Auto" Binding="{Binding Path=txtBranchOffice}" />
    <dg:DataGridTextColumn Header="Město" Width="Auto" Binding="{Binding Path=txtTown}" />
</dg:DataGrid.Columns> 
</dg:DataGrid>

联系人由一个函数加载,该函数将所选公司的ID (该公司的SAP编号)作为参数。

问题是如何将在上面的datagrid中选择的公司的SAP编号传递给用户控件。我创建了一个代理:

代码语言:javascript
复制
Public Delegate Sub CompanyContactsUpdate(ByVal sap As String)

然后,在主窗口的companies数据网格的SelectionChanged子窗口中,我放置了以下代码:

代码语言:javascript
复制
Dim doUpdate As CompanyContactsUpdate
Dim obj As New ContactsXCompany
doUpdate = New CompanyContactsUpdate(AddressOf obj.UpdateContactsXCompanyDatagrid)
doUpdate.Invoke(grid.SelectedItem.txtSap)

函数UpdateContactsXCompanyDatagrid在用户控件上定义:

代码语言:javascript
复制
Public Class ContactsXCompany
    Public Sub UpdateContactsXCompanyDatagrid(ByVal Sap As String)
        Dim d As New ContactPersonViewModel
        Me.dgContactsXCompanyList.DataContext = d.GetContacts(Sap)
    End Sub
End Class

当我运行应用程序时,一切工作正常,没有错误。所选公司的SAP号被正确地传递给函数UpdateContactsXCompanyDatagrid。Me.dgContactsXCompanyList.DataContext似乎已分配,但联系人的datagrid为空。不显示任何行。

我应该在哪里搜索问题?非常感谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2011-08-19 10:07:54

调用ContactPersonViewModel.GetContacts()返回的集合类型是什么?

我相信它需要是一个ObservableCollection,或者实现INotifyCollectionChanged的其他集合。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7049922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档