ComboBox コントロールが選択可能な項目を持っているかを調べるには HasItems プロパティを使用します(WPFのみ)。
選択可能な項目を持っている場合には HasItems プロパティはTrueになります。
Silverlight のComboBox コントロールは HasItems プロパティを持っていないので、Items プロパティの Count プロパティを参照し、値が0より大きければ「選択可能項目がある」と判断します。
下記は、[項目があるか?]ボタンが押されたときに、ComboBox コントロールに項目があるかどうかを表示する例です。
最初はComboBoxに項目を持たせているので、「選択可能な項目を持っています」と表示されます。
次に[全項目削除]ボタンをクリックしたあとに[項目があるか?]ボタンが押されると、「選択可能な項目はありません」と表示されます。
VBの例
' [項目があるか?]ボタンクリック時の処理
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
If ComboBox1.HasItems Then
MessageBox.Show("選択可能な項目を持っています")
Else
MessageBox.Show("選択可能な項目はありません")
End If
End Sub
' [全項目削除]ボタンクリック時の処理
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button2.Click
'全項目を削除
ComboBox1.Items.Clear()
End Sub
C#の例
// [項目があるか?]ボタンクリック時の処理
private void button1_Click(object sender, RoutedEventArgs e)
{
if ( comboBox1.HasItems )
MessageBox.Show("選択可能な項目を持っています");
else
MessageBox.Show("選択可能な項目はありません");
}
// [全項目削除]ボタンクリック時の処理
private void button2_Click(object sender, RoutedEventArgs e)
{
// 全項目を削除
comboBox1.Items.Clear();
}
