首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用DataGrid在DataGrid中绑定EntityFramework

使用DataGrid在DataGrid中绑定EntityFramework
EN

Stack Overflow用户
提问于 2017-07-31 18:51:11
回答 1查看 36关注 0票数 0

Xaml:无法找到如何绑定包含一个或多个记录的第二个DataGrid。

代码语言:javascript
复制
<DataGrid Name="lstPurchaseDataGrid" Visibility="Visible"  AutoGenerateColumns="False" Margin="20,0,20,0" IsReadOnly="True" materialDesign:DataGridAssist.CellPadding="4 2 2 2" materialDesign:DataGridAssist.ColumnHeaderPadding="4 2 2 2" ItemsSource="{Binding}">
                        <DataGrid.Columns>
                            <DataGridTextColumn Header="Purchase Id" Width="100" Binding="{Binding ID}"/>
                            <DataGridTextColumn Header="Vendor Name" Width="2*" Binding="{Binding Vendor.Name}"/>
                            <DataGridTextColumn Header="Parts Amount" Width="100" Binding="{Binding SubTotal}"/>
                            <DataGridTextColumn Header="Discount" Width="100" Binding="{Binding Discount}"/>
                            <DataGridTextColumn Header="Total Amount" Width="120" Binding="{Binding GrandTotal}"/>
                            <DataGridTextColumn Header="Purchase Date" Width="100" Binding="{Binding PurchaseDate, StringFormat=d}" />
                            <DataGridTextColumn Header="Created On" Width="100" Binding="{Binding CreatedOn}" />
                            <DataGridTextColumn Header="Status" Width="100" Binding="{Binding Status}" />
                        </DataGrid.Columns>
                        <DataGrid.RowDetailsTemplate>
                            <DataTemplate>
                                <DataGrid AutoGenerateColumns="False" x:Name="lstDetailsDataGrid" IsReadOnly="False" ItemsSource="{Binding PurchaseInfoes}">
                                    <DataGrid.Columns>
                                        <DataGridTextColumn Binding="{Binding Path=Id}" Header="Part Id" />
                                        <DataGridTextColumn Binding="{Binding Path=Part.PartNo}" Header="Part No" />
                                        <DataGridTextColumn Binding="{Binding Path=Part.Name}" Header="Name" />
                                        <DataGridTextColumn Binding="{Binding Path=Quantity}" Header="Quantity" />
                                        <DataGridTextColumn Binding="{Binding Path=CGST}" Header="CGST" />
                                        <DataGridTextColumn Binding="{Binding Path=SGST}" Header="SGST" />
                                        <DataGridTextColumn Binding="{Binding Path=Discount}" Header="Discount" />
                                        <DataGridTextColumn Binding="{Binding Path=Total}" Header="Total" />
                                    </DataGrid.Columns>
                                </DataGrid>
                            </DataTemplate>
                        </DataGrid.RowDetailsTemplate>
                    </DataGrid>

C# lstPurchaseDataGrid.Items.Clear();

代码语言:javascript
复制
            var purchaseList = (from purchases in dt.Purchases.Include("Vendor")
                                select purchases).ToList();
            lstPurchaseDataGrid.ItemsSource = purchaseList;

C#购买类代码

公共部分类购买{ System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage","CA2214:DoNotCallOverridableMethodsInConstructors")公共购买(){ this.PurchaseInfoes =新HashSet();this.PurchasePayDetails =新HashSet();}

代码语言:javascript
复制
    public int ID { get; set; }
    public int VendorID { get; set; }
    public decimal SubTotal { get; set; }
    public decimal Discount { get; set; }
    public decimal GrandTotal { get; set; }
    public string Status { get; set; }
    public System.DateTime PurchaseDate { get; set; }
    public string InvoiceNo { get; set; }
    public string Note { get; set; }
    public System.DateTime CreatedOn { get; set; }
    public string CreatedBy { get; set; }
    public Nullable<System.DateTime> UpdatedOn { get; set; }
    public string UpdatedBy { get; set; }
    public Nullable<decimal> RemainingPayment { get; set; }

    public virtual Vendor Vendor { get; set; }
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
    public virtual ICollection<PurchaseInfo> PurchaseInfoes { get; set; }
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
    public virtual ICollection<PurchasePayDetail> PurchasePayDetails { get; set; }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-01 19:40:07

我在第二个网格中绑定时添加了路径,在移除路径之后,它完美地工作了。

前面: Binding="{Binding Path=Id}“Id Binding="{Binding Id}”

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

https://stackoverflow.com/questions/45423279

复制
相关文章

相似问题

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