コンボコントロールで、SelectedIndexプロパティが0以上のときにDataSourceプロパティがクリアされると例外が発生する
対象製品
InputMan for .NET 2.0J Web Forms Edition
発生環境
動作環境と同じ
状況
修正済み
詳細
データソースに接続したコンボコントロールにて、項目が選択された状態でポストバックされたとき、サーバー側でデータソースがクリアされても、SelectedIndexプロパティの値が変更されないため、「インデックスが範囲を超えています。」という例外が発生します。
回避方法
この問題は改定第5版(v2.0.2009.320)で修正されました。
不具合を修正した最新のサービスパックは、アップデートページからダウンロードできます。
改定第5版より前のバージョンでは次の方法で回避可能です。
データソースがクリアされたときに、SelectedIndexプロパティを-1に設定します。
Protected Sub Combo1_DataSourceChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Combo1.DataSourceChanged
If Combo1.DataSource.ToString = "" AndAlso Combo1.SelectedIndex > -1 Then
Combo1.SelectedIndex = -1
End If
End Sub
不具合を修正した最新のサービスパックは、アップデートページからダウンロードできます。
改定第5版より前のバージョンでは次の方法で回避可能です。
データソースがクリアされたときに、SelectedIndexプロパティを-1に設定します。
Protected Sub Combo1_DataSourceChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Combo1.DataSourceChanged
If Combo1.DataSource.ToString = "" AndAlso Combo1.SelectedIndex > -1 Then
Combo1.SelectedIndex = -1
End If
End Sub
キーワード
INME07132
この文書は、以前は次のバグレポートIDで公開されていました : 7873