2

ComboBoxEditSettings を使用している場合、DevExpress wpf グリッド バインディングに問題があります。以下はグリッドです。「Associated Well Types」列を ViewModel のプロパティにバインドしています。ただし、コンボ ボックスからいくつかの項目を選択して [OK] をクリックすると、選択した項目がセルに表示されますが、ViewModel にバインドされません。では、「OK」ボタンのクリックイベントで何かをする必要がありますか? 適切に設定していないバインディングに何かありますか? 上記のすべて?よろしくお願いします。

<ctrls:GridControl Grid.Row="2" Grid.ColumnSpan="2" HorizontalAlignment="Stretch" Margin="5" 
                               dx:ThemeManager.ThemeName="Office2007Blue"
                               x:Name="gridControlForms" VerticalAlignment="Stretch"
                               ShowLoadingPanel="{Binding TaxFormsIsBusy}"
                               ItemsSource="{Binding TaxFormList}" >
<ctrls:GridControl.Columns>
            <dxg:GridColumn FieldName="DisplayName" Header="Form Name" VisibleIndex="1" AllowMoving="False" />
            <dxg:GridColumn ReadOnly="True" FieldName="PrintSequence" Header="Print Sequence" VisibleIndex="2" AllowMoving="False" />
            <dxg:GridColumn Header="Associated Well Types" FieldName="SelectedWellTypes" VisibleIndex="3" AllowMoving="False" AllowBestFit="True" Width="300" >
                <dxg:GridColumn.EditSettings>
                            <dxe:ComboBoxEditSettings ItemsSource="{Binding WellTypes}" DisplayMember="WellType" ValueMember="RenditionStateFormWellTypeId" IsTextEditable="False" >
                                <dxe:ComboBoxEditSettings.StyleSettings>
                                            <dxe:CheckedComboBoxStyleSettings />
                                </dxe:ComboBoxEditSettings.StyleSettings>
                            </dxe:ComboBoxEditSettings>
                </dxg:GridColumn.EditSettings>
            </dxg:GridColumn>
</ctrls:GridControl.Columns>           
<ctrls:GridControl.View>
            <dxg:TableView ShowGroupPanel="False"  BestFitArea="All" AllowSorting="False" 
                                   FocusedRow="{Binding SelectedTaxForm, Mode=TwoWay}" AllowColumnFiltering="False" />
</ctrls:GridControl.View>

4

1 に答える 1

1

問題を発見しました。グリッドが「オブジェクトはIConvertibleを実装する必要があります」というエラーをスローしていました。それを発見したら、SelectedWellTypesをintからIEnumberable型オブジェクトに変更し、ビューモデルで適切な変換を行いました。これにより、バインディングが発生しました。

于 2012-07-20T13:43:31.370 に答える