【问题标题】:not able to transfer all valuesof particular selected row in datagrid view to another form无法将 datagridview 中特定选定行的所有值传输到另一个表单
【发布时间】:2011-08-18 11:44:36
【问题描述】:

我这样做是为了将 gridview 行值从一个表单发送到另一个表单

我有 datagrid 视图,其中包含 productdescription 、 productimage 、 productname 列

我的主要目标是,如果我在 datagridview 中选择图像单元格,则选择所选图像,以及该图像所在行的值需要发送到另一个表单...

在下面的代码中,只有图像将被传输到另一个表单,我还需要发送另一个值...

我已经搜索了很多,但我没有找到任何解决方案..代码如下......

      private void productGridview_Cellclick(object sender, DataGridViewCellEventArgs e)
      {
        byte[] bits = null;
        Image img = null;

            if (e.ColumnIndex != productgridview.Columns["productimage"].Index) return;

            if (productgridview.SelectedCells.Count == 0) return;

            bits = (byte[])productgridview.SelectedCells[0].Value;
            img = bytearraytoimage(bits);


            if (img is Image)
            {
                using (ProductDescriptionForm pf = new ProductDescriptionForm())
                {
                    pf.picture = img;



                    pf.ShowDialog(this);
                }
            }

    }

在产品描述形式中我已经这样定义了......

   public partial class ProductDescriptionForm : Form
   {
     public ProductDescriptionForm()
    {
        InitializeComponent();
    }

    public Image picture
    {
        get { return pictureBox1.Image; } 
        set { pictureBox1.Image = value; }
    }


}

如何将具有图像的同一行中的其他值传输到另一个表单

我正在使用 winforms....

提前非常感谢....

是否需要将单元格点击事件改为行点击事件??????

如果是这样,我如何在 datagridview 中检查带有图像的特定单元格

有什么建议对我有帮助吗

【问题讨论】:

  • 有没有人能帮忙解决这个问题.....
  • 你想达到什么目的?如果你想传输特定的单元格值,当用户点击它时,你需要 CellContentClick 或 CellClick (这就是你正在使用的),如果你想传输该行的所有值,你应该使用 CellClick 事件和然后是 e.RowIndex。请通过示例更具体地说明您想要实现的目标。
  • @marshal thanq 为您提供帮助,我得到了答案..请参阅我的答案 int selectedrowindex= productgridview.SelectedCells[0].RowIndex; DataGridViewRow selectedRow = productgridview.Rows[selectedrowindex]; string desc = Convert.ToString(selectedRow.Cells["productdescr"].Value);通过使用上述语句,我得到了值并转移到了另一种形式...
  • 这听起来不像是一种非常面向对象的方法,我会一次又一次地说,DataGridView 是用于向用户显示信息而不是在大多数情况下进行操作。

标签: c# .net winforms datagridview


【解决方案1】:

这听起来不像面向对象,但是嘿;

@marshal thanq 为您提供帮助,我得到了答案..请参阅我的答案 int selectedrowindex= productgridview.SelectedCells[0].RowIndex; DataGridViewRow selectedRow = productgridview.Rows[selectedrowindex]; string desc = Convert.ToString(selectedRow.Cells["productdescr"].Value);通过使用上述语句,我得到了值并转移到了另一种形式... – user852714

【讨论】:

    【解决方案2】:

    我通过以下方式解决了我的问题

    int selectedrowindex= productgridview.SelectedCells[0].RowIndex;
    DataGridViewRow selectedRow = productgridview.Rows[selectedrowindex];
    string desc = Convert.ToString(selectedRow.Cells["productdescr"].Value);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多