[INMNN06703] DataSourceとTextプロパティにそれぞれデータバインドしてリストから値を選択すると、Textプロパティにバインドしたデータソースが更新されない
対象製品
InputMan for .NET 4.0J Windows Forms Edition
発生環境
実行環境と同じ
詳細
この現象はComboコントロールで発生します。以下の条件でオブジェクトを設定したとき、リストボックスから項目を選択してもTextプロパティにデータバインドしたデータソースが更新されません。
1. DataSourceプロパティにデータソースが設定されている。
2. Textプロパティがデータバインドされている。
この動作は製品の仕様に基づくものです。DataSourceが設定された状態でリストボックスから項目を選択した場合はTextChangedイベントが発生せず、Textプロパティのデータソース更新は行われません。
1. DataSourceプロパティにデータソースが設定されている。
2. Textプロパティがデータバインドされている。
この動作は製品の仕様に基づくものです。DataSourceが設定された状態でリストボックスから項目を選択した場合はTextChangedイベントが発生せず、Textプロパティのデータソース更新は行われません。
回避方法
ComboコントロールのSelectedIndexChangedイベントをハンドルし、以下のように記述します。
[VB]
Private Sub Combo1_SelectedIndexChanged( ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles Combo1.SelectedIndexChanged
'Textプロパティを一度クリアします。
Combo1.Text = ""
' 選択項目の内容をTextプロパティに再度設定します。
combo1.Text = CType( Combo1.SelectedItem.Content, String )
End Sub
[C#]
private void combo1_SelectedIndexChanged( object sender, EventArgs e )
{
// Textプロパティを一度クリアします。
combo1.Text = "";
// 選択項目の内容をTextプロパティに再度設定します。
combo1.Text = ( string )( combo1.SelectedItem.Content );
}
[VB]
Private Sub Combo1_SelectedIndexChanged( ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles Combo1.SelectedIndexChanged
'Textプロパティを一度クリアします。
Combo1.Text = ""
' 選択項目の内容をTextプロパティに再度設定します。
combo1.Text = CType( Combo1.SelectedItem.Content, String )
End Sub
[C#]
private void combo1_SelectedIndexChanged( object sender, EventArgs e )
{
// Textプロパティを一度クリアします。
combo1.Text = "";
// 選択項目の内容をTextプロパティに再度設定します。
combo1.Text = ( string )( combo1.SelectedItem.Content );
}
この文書は、以前は次のFAQ IDで公開されていました : 7383