テキストボックスからテキストを含むリストボックスをリアルタイムでフィルタリングしようとしています。ここでリストボックスをリアルタイムでTextBoxで表示する
はコードです:ここでは
private void SrchBox_TextChanged_1(object sender, EventArgs e)
{
var registrationsList = registrationListBox.Items.Cast<String>().ToList();
registrationListBox.BeginUpdate();
registrationListBox.Items.Clear();
foreach (string str in registrationsList)
{
if (str.Contains(SrchBox.Text))
{
registrationListBox.Items.Add(str);
}
}
registrationListBox.EndUpdate();
}
は問題がある:
私はプログラムを実行すると、私はこのエラーを取得:
Object reference not set to an instance of an object
私はバックスペースを打つ場合、私の初期リストはもう表示されません。これは、私の実際のアイテムリストが減少したためですが、これをどのように達成できますか?
正しい方向に向けることができますか?
あなたが使って試してみました(!IsPostBackプロパティ)、それは後のバック –
あなたは別の '一覧'ようItems.Clear()ドン」にリストボックスの内容を保存する必要がありますいないかどうかをチェックします空のリストを残す。 NREはあまり明らかではありません。元の項目が文字列でない場合、文字列へのキャストは必ずしも機能しません。常にToString()を使用します。 –
@COLDTOLD:これはWinFormsの質問です –