2012-02-27 6 views
1

DropDownListGridViewにあります。編集操作中に、すべての行のDropDownListは編集(および更新)時に正しく機能します。Gridviewを編集するときにDropdownListを使用する方法

しかし、私は編集ボタンをクリックすると、特定の行では、それは次のようなエラーが表示されます。

'DropDownList3' has a SelectedValue which is invalid because it does not exist in the list of items. Parameter name: value

これはコードです:

<asp:DropDownList ID="DropDownList3" runat="server" DataSourceID="AccessDataSource4" 
    DataTextField="ProvinceName" DataValueField="ProvinceName" SelectedValue='<%# Bind("Province") %>'> 
</asp:DropDownList> 

表 "RateCentersは" Gridviewに表示され、それは "Province Column"を持っています。州の列は、テーブルの "ProvinceName"からソースを取得しますProvinceList

私に解決策を教えてください。

+0

'DropDownList'マークアップを表示する必要があります。 – jadarnel27

+0

DropDownListをデータバインドする方法を確認する必要があります。どうやら、SelectedValueをいくらか存在しないように設定しています。 –

+0

@TimSchmelterマークアップを追加しました –

答えて

2

あなたのマークアップは、あなたのDropDownList

値はで「ProvinceName」フィールドから来ているあなたの親データソース(Gridviewのデータソース)に「省」欄にごDropdownListSelectedValueを結合していると言いますあなたのAccessDataSource4コントロール

このエラーは、コードがあなたのAccessDataSource4コントロールの「ProvinceName」フィールドに返された値のリストに存在しないGridViewデータソース(「省」フィールド)から値を選択していることを意味します。


で、それはあなたのGridViewコントロールのデータソースとして同じクエリを実行しますが、1つの列のみを使用すると、(「ProvinceName」)必要があるように、このへの迅速な解決策はAccessDatasource4の「でSelectCommand」を変更することであろうSELECTリストそうすれば、あなたは同じ価値を持つことが保証されます。

1

実際にリストに存在しないDDL(DropDownList)の値をプログラムで設定すると、このエラーが発生します。

Scenario: You selection option 5 in DDL, but it contains only 3 options, for example

私たちが調査できるように、コードについてもう少し詳しく教えてください。

関連する問題