Visual c#读取DataGridView数据并在PictureBox中显示

Visual c#读取DataGridView数据并在PictureBox中显示,c#,visual-studio,datagridview,picturebox,C#,Visual Studio,Datagridview,Picturebox,很抱歉我是这门语言的新手。这是我的简单情况 我有一个DataGrid,我用这种方式放置我的库存项目: public void UpdateInventoryListUI() { dGridInvetory.RowHeadersVisible = false; dGridInvetory.ColumnCount = 2; dGridInvetory.Columns[0].Name = "Name"; dGridInveto

很抱歉我是这门语言的新手。这是我的简单情况

我有一个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() });
            }

        }            
    }
好的,很好,给我看看我的物品。 现在我想创建一个事件,当我用鼠标选择行(整行-因此名称和数量)时,它会在图片框中显示该行的图像 项目。我需要知道如何读取如下字符串:

    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!
    }
你能帮我吗?只想单击该行并比较该行中的字符串。如果相同,则显示图片框中的图像


感谢所有人和sry,我的英语很差。

你没有用最好的活动来完成你想要完成的事情。请尝试改用SelectionChanged事件:

void dGridInventory_SelectionChanged(object sender, EventArgs e) {
  if (dGridInventory.CurrentRow != null) {
    if (dGridInventory.CurrentRow.Cells["Name"].Value.ToString() == "Mask_DPS") {
      // etc...
    }
  }
}

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

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

void dGridInventory_SelectionChanged(object sender, EventArgs e) {
  if (dGridInventory.CurrentRow != null) {
    if (dGridInventory.CurrentRow.Cells["Name"].Value.ToString() == "Mask_DPS") {
      // etc...
    }
  }
}
确保事件已正确订阅到DataGridView控件