ListBox.SelectedIndexChanged イベント
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
SelectedIndex プロパティまたは SelectedIndices コレクションが変更されたときに発生します。
public:
event EventHandler ^ SelectedIndexChanged;
public event EventHandler SelectedIndexChanged;
public event EventHandler? SelectedIndexChanged;
member this.SelectedIndexChanged : EventHandler
Public Custom Event SelectedIndexChanged As EventHandler
イベントの種類
例
次のコード例では、 イベントを使用して、別ListBoxのSelectedIndexChangedコントロール内の項目を検索して選択する方法を示します。 この例では、 イベントを SelectedIndexChanged 使用して、 で選択した項目がいつ変更されたかを ListBox 判断します。 次に、コード例では、 プロパティを使用して項目のテキストをSelectedItem読み取り、最初ListBoxの で によってSelectedItem返されるテキストを使用して、別ListBoxの で メソッドを呼び出FindStringします。 もう一方 ListBoxの で項目が見つかった場合は、項目が選択されます。 この例では、 と listBox2
という名前listBox1
の 2 つのListBoxコントロールがフォームに追加され、両方ListBoxのコントロールに同じ項目が含まれている必要があります。 この例では、例で定義されているイベント処理メソッドが のイベントlistBox1
にSelectedIndexChanged接続されている必要もあります。
private:
void listBox1_SelectedIndexChanged( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
// Get the currently selected item in the ListBox.
String^ curItem = listBox1->SelectedItem->ToString();
// Find the string in ListBox2.
int index = listBox2->FindString( curItem );
// If the item was not found in ListBox 2 display a message box,
// otherwise select it in ListBox2.
if ( index == -1 )
MessageBox::Show( "Item is not available in ListBox2" );
else
listBox2->SetSelected( index, true );
}
private void listBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
// Get the currently selected item in the ListBox.
string curItem = listBox1.SelectedItem.ToString();
// Find the string in ListBox2.
int index = listBox2.FindString(curItem);
// If the item was not found in ListBox 2 display a message box, otherwise select it in ListBox2.
if(index == -1)
MessageBox.Show("Item is not available in ListBox2");
else
listBox2.SetSelected(index,true);
}
Private Sub listBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles listBox1.SelectedIndexChanged
' Get the currently selected item in the ListBox.
Dim curItem As String = listBox1.SelectedItem.ToString()
' Find the string in ListBox2.
Dim index As Integer = listBox2.FindString(curItem)
' If the item was not found in ListBox 2 display a message box, otherwise select it in ListBox2.
If index = -1 Then
MessageBox.Show("Item is not available in ListBox2")
Else
listBox2.SetSelected(index, True)
End If
End Sub
注釈
このイベントのイベント ハンドラーを作成して、 で選択したインデックスがいつ変更されたかを ListBox 判断できます。 これは、 の現在の選択に基づいて他のコントロールに情報を表示する必要がある場合に ListBox便利です。 このイベントのイベント ハンドラーを使用して、他のコントロールに情報を読み込むことができます。
プロパティが SelectionMode または SelectionMode.MultiExtendedにSelectionMode.MultiSimple設定されている場合、選択範囲から項目をSelectedIndices削除するなど、コレクションを変更すると、このイベントが発生します。
イベントの処理の詳細については、「処理とイベントの発生」を参照してください。
適用対象
こちらもご覧ください
.NET