Visual c#读取DataGridView数据并在PictureBox

时间:2016-03-21 16:12:53

标签: c# visual-studio datagridview picturebox

对不起,我是这种语言的新手。这是我的简单情况。

我有一个DataGrid,我以这种方式放置我的库存物品:

 public void UpdateInventoryListUI()
    {
        dGridInvetory.RowHeadersVisible = false;

        dGridInvetory.ColumnCount = 2;
        dGridInvetory.Columns[0].Name = "Name";
        dGridInvetory.Columns[0].Width = 112;
        dGridInvetory.Columns[1].Name = "Quantity";

        dGridInvetory.Rows.Clear();


        foreach (InventoryItem inventoryItem in mainForm1._player.Inventory)
        {
            if (inventoryItem.Quantity > 0)
            {


                dGridInventory.Rows.Add(new[] { inventoryItem.Details.Name, oggettoInventory.Quantity.ToString() });
            }

        }            
    }

好的,它工作正常并向我展示我的物品。 现在我想创建一个事件,当我用鼠标选择Row(整行 - 所以名称和数量)时,它会在图片框中显示我的图像 项目。我需要知道如何阅读下面的STRING:

    private void dGridInventory_MouseClick(object sender, MouseEventArgs e)
    {
          if(// the string "Name" on row is == "Mask_DPS"){
          picBoxMask.Image = Properties.Resources.MASK_DPS;
          labelInfo.Text = "This is a dps Mask!";
    }
          if((// the string "Name" on row is == "Mask_TANK"){
          picBoxMask.Image = Properties.Resources.MASK_TANK;
          labelInfo.Text = "This is a tank mask!;

          //...and so on!
    }
你能帮帮我吗?只想点击Row并比较Row中的字符串。如果相同,则在我的图片框中显示图像。

感谢所有人,并为我糟糕的英语而感到骄傲。

1 个答案:

答案 0 :(得分:0)

您没有将最佳活动用于您想要完成的任务。请尝试使用SelectionChanged事件:

query.findObjectsInBackgroundWithBlock({ (objects, error) -> Void in

    var fileArray = [PFFile]()
    var imageArray = [NSData]()

    if error == nil && objects!.count > 0 {

        for object in objects! {

            if let message = object["imageFile"] as? PFFile {

                fileArray.append(message)
            }
        }
    }

    for object in fileArray {
        object.getDataInBackgroundWithBlock({ (data, error) -> Void in
            imageArray.append(data!)
            print(imageArray)
            replyHandler(["images":imageArray])
        })

    }
    print(fileArray)


})

确保事件已正确订阅DataGridView控件。