インベントリ プログラムでは、クラスItem
とItemCollection
、および派生クラス を作成しましたComputer : Item
。
フォームで、 (一部のコンピューターを含む) という名前ItemCollection
の (の一般的なリスト) を作成し、各アイテムのプロパティ(場所、数量など)を表示したいと考えています。Item
TheseItems
ThisItem
これを行っている間、コンピューターの個別のプロパティ (CPU、HDD、RAM など) も表示したいと考えています。私はこれまでのところこれを持っています:
foreach (Item ThisItem in TheseItems)
{
//Display properties of Item instance “ThisItem” (Excluded for ease of reading)
if (ThisItem is Computer)
{
//Display distinct properties of Computer instance “ThisItem”
}
}
これまでのところエラーはありませんが、続行する方法がわかりません。私がやりたいことをすることは可能ですか?
編集:ありがとう、ステーキ!キャスティングでは事前に割り当てられたプロパティにアクセスできないのではないかと心配していましたが (単に新しいプロパティを割り当てることができるだけです)、幸いなことに間違っていました! 私は今持っています:
Computer ThisComputer = ThisItem as Computer;
if (Computer != null)
{
//Display distinct properties of Computer instance “ThisComputer”
}
私が受けた迅速な助けに本当に感銘を受けました. ありがとう!