WinForms アプリケーションを作成していて、データソースを持つリストボックスがObservableCollection<ParentClass>
あり、クラスのサブクラスに基づいて特定のラベルを設定しようとしています。「この時点でクラス名は無効です」というエラーが表示されます。サンプルコード:
using System;
public class Parent
{
public Parent() { }
public class ChildA : Parent
{
public ChildA() { }
}
}
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
ObservableCollection<Parent> listBoxSource =
new ObservableCollection<Parent>();
listBox.DataSource = listBoxSource;
}
private void customerListBox_SelectedIndexChanged(object sender,
EventArgs e)
{
if (customerListBox.SelectedItem.GetType() ==
Parent.ChildA) // <---Error Here
{
//Code Here
}
}
}
要素のタイプに基づいてアクションを実行するより良い方法はありますか?