0

コンボボックスのバインディング式を取得するコードがあります

bindingExpression = ((ComboBox)(((Grid)(control.Content)).Children[0])).GetBindingExpression( ComboBox.SelectedValueProperty );

コンボボックスはxamlで定義されています

<ComboBox Style="{StaticResource UiEditorComboBoxStyle}"
                                  Name="comboBox_Business" 
                                  DisplayMemberPath="Value.Name" 
                                  SelectedValuePath="Value.BusinessId"
                                      >
                                <ComboBox.SelectedValue>
                                    <Binding Path="entity.BusinessId" UpdateSourceTrigger="Explicit" ValidatesOnDataErrors="True" ValidatesOnExceptions="True" Mode="TwoWay">
                                        <Binding.ValidationRules>
                                            <validators:ValidationRule_SelectedItem NotSelectedErrorMessage="A Business must be selected"
                                                                                NotSelectedErrorMessageTranslationKey="BusinessMustBeSelected" />
                                        </Binding.ValidationRules>
                                    </Binding>
                                </ComboBox.SelectedValue>
                            </ComboBox>

電話すると

bindingExpression.UpdateSource() 

'指定されたキャストは無効です'例外が発生します。プロパティのタイプ(Guid)と関係があると思いますが、どう対処すればいいのかわかりません。

コンボボックスの値は辞書にバインドされています

ポインタはありますか?

乾杯、

J

4

1 に答える 1

0

並べ替えると、カスタムコンバーターを定義する必要がありました。

于 2012-10-29T12:45:53.823 に答える