私は以前に質問してみましたが、十分説明していませんでした。私はもう一度やり直すだろう、私は取得し、イメージの文字列を設定し、文字列を取得する辞書を持っています。辞書項目はlistBoxに格納され、別のコンボボックスに設定する項目をダブルクリックすると表示されます。私は、辞書を反復するボタンをクリックしたいと思うし、それらが辞書の中の何かに合っていれば、それはlistViewに保存されます。私は、ここにあるだけで、文字列の名前と価格かかわらず、画像を望んでいないクラスと辞書: コンボボックス内のすべてのアイテムを使用して辞書を反復処理できますか?
class BookTitle
{
public string ImageTitle { get; set; }
public List<string> Prices { get; }
public BookTitle(string imageTitle, params string[] prices)
{
ImageTitle = imageTitle;
Prices = new List<string>(prices.Length);
Prices.AddRange(prices);
}
}
private Dictionary<string, BookTitle> prices = new Dictionary<string, BookTitle>
{
{ "Visual Basic", new BookTitle("vb.png", "$55") },
{ "Java", new BookTitle("java.png", "$45") },
{ "C#", new BookTitle("c#.png", "$75") },
{ "LAN Networks", new BookTitle("lan.png", "$68") },
{ "Windows Networking", new BookTitle("windows.png", "$49") },
{ "More About Networking", new BookTitle("more.png", "$54") },
{ "Web Programming", new BookTitle("web.png", "$67") },
{ "JavaScript", new BookTitle("javascript.png", "$64") },
{ "ASP", new BookTitle("asp.png", "$50") }
};
は、あなたたちは、私はちょうど新しいクラスを作るべきだと思いますか?私は他の多くの間でこれを試してみました:
private void finalizeButton_Click(object sender, EventArgs e)
{
string cartItems = cartComboBox.Items.ToString();
if (prices.Keys.Contains(cartItems))
{
BookTitle bt = prices[cartItems];
ListViewItem list = cartListView.Items.Add(cartItems);
list.SubItems.Add(cartItems);
}
}
これは、comboBoxのテキストでうまくいきますが、文字列値($ 55)を引き出して、SubItemsにも格納しようとしています。 – KobiashiMaru