首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XamDataGrid绑定问题

XamDataGrid绑定问题
EN

Stack Overflow用户
提问于 2010-05-29 15:14:41
回答 1查看 6.3K关注 0票数 1

我想使用ComboBox控件通过集合的(CurrentEntity.INVTransactions)属性(BatchList)绑定XamDataGrid的单元格,但它不起作用。我使用的是mvvm pattern.In,我的代码"BatchId“和"BatchList”是CurrentEntity.INVTransactions集合的属性。

你能告诉我为什么xamDataGrid的comboBox不显示BatchList吗?

示例代码:

代码语言:javascript
复制
<UserControl x:Class="PDCL.ERP.Modules.Inventory.Views.RequisitionList.RequisitionInfoUserControl"
            ...>    
        <GroupBox Grid.Column="0" Grid.Row="1" Grid.ColumnSpan="2" Header="Details" VerticalAlignment="Top" Margin="5,0,5,0">
        <Grid>
            <igDP:XamDataGrid Margin="2"  DataSource="{Binding CurrentEntity.INVTransactions}" x:Name="requisitionDeailsGrid" InitializeRecord="requisitionDeailsGrid_InitializeRecord">                   
                <igDP:XamDataGrid.FieldLayoutSettings>
                    <igDP:FieldLayoutSettings HighlightAlternateRecords="True" 
                                      AutoGenerateFields="False" 
                                      AllowAddNew="True" 
                                      AddNewRecordLocation="OnBottom" 
                                      AutoFitMode="Always"
                                      SupportDataErrorInfo="RecordsAndCells"
                                      DataErrorDisplayMode="ErrorIcon"
                                      />
                </igDP:XamDataGrid.FieldLayoutSettings>
                <igDP:XamDataGrid.FieldLayouts>
                    <igDP:FieldLayout>
                        <igDP:FieldLayout.Fields>
                            <igDP:Field Name="Remarks" Label="Remarks" Width="Auto">
                                <igDP:Field.Settings>
                                    <igDP:FieldSettings AllowEdit="True" AllowResize="True"/>
                                </igDP:Field.Settings>
                            </igDP:Field>                               
                            <igDP:Field Name="BatchId" Label="Batch" Width="Auto">
                                <igDP:Field.Settings>                                        
                                    <igDP:FieldSettings EditorType="{x:Type igEditors:XamComboEditor}">
                                        <igDP:FieldSettings.EditorStyle>
                                            <Style TargetType="{x:Type igEditors:XamComboEditor}">                                                    
                                                <Setter Property="ItemsSource" Value="{Binding INVTransactions.BatchList, RelativeSource = {RelativeSource FindAncestor, AncestorType={x:Type igDP:XamDataGrid}, AncestorLevel=1}}" />                                                    
                                                <Setter Property="DisplayMemberPath" Value="BatchName" />
                                                <Setter Property="ValuePath" Value="BatchId" />
                                            </Style>
                                        </igDP:FieldSettings.EditorStyle>

                                    </igDP:FieldSettings>
                                </igDP:Field.Settings>
                            </igDP:Field>
                            <igDP:Field Name="Qty" Label="Qty Supplied" Width="Auto">
                                <igDP:Field.Settings>
                                    <igDP:FieldSettings AllowEdit="True" AllowResize="True"/>
                                </igDP:Field.Settings>
                            </igDP:Field>
                        </igDP:FieldLayout.Fields>
                    </igDP:FieldLayout>
                </igDP:XamDataGrid.FieldLayouts>
            </igDP:XamDataGrid>
            </Grid>
    </GroupBox>
    </UserControl>

“输出”窗口显示错误"BindingExpression path error:'INVTransactions‘property not found on 'object’XamDataGrid‘(Name='requisitionDeailsGrid')’。BindingExpression:Path=INVTransactions.BatchList;DataItem='XamDataGrid‘(Name='requisitionDeailsGrid');目标元素为'XamComboEditor’(名称=‘’);目标属性为'ItemsSource‘(类型为'IEnumerable')“。

EN

回答 1

Stack Overflow用户

发布于 2011-07-05 17:22:33

您正在将项目绑定到Xamdatagrid的相对源代码,而XamDataGrid没有INVTransactions属性,我认为您实际上正在寻找已经绑定到INVTranactions属性的数据源,因此尝试将绑定更改为。

代码语言:javascript
复制
{Binding DataSource.BatchList, RelativeSource = {RelativeSource FindAncestor, AncestorType={x:Type igDP:XamDataGrid}, AncestorLevel=1}} 
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2934170

复制
相关文章

相似问题

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