将数据从一个表单传递到数据网格视图中的特定单元格,从另一个表单传递到C#

时间:2015-12-17 00:46:44

标签: c# forms datagridview

我有一个datagridview,dgv1,有5列,分别是:Credit,Debit,EntryDescription,AccountingEntry,Employee。因为在EntryDescription中我可能需要输入几行文本,我所做的是创建一个事件,其中当单击EntryDescription时,带有richtextbox的新表单显示为ShowDialog,并且一旦完成描述写入,用户按下AddDescription按钮以及在richtextbox中输入的任何文本都应添加到dgv1的当前行和EntryDescription单元格中。我已经有一些代码已经完成,但我不知道继续其余的。我需要你的智慧。感谢。

我知道点击EntryDescription并出现一个下拉文本框,其中我将描述描述为好的和更好的方式,但我不知道该怎么做,所以我刚刚解决了这个问题。

在AccountingEntry表格中

public static int RowCount { get; set; }
    public static string DescriptionToAdd { get; set; }
private void dgv1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
    {
        if (e.ColumnIndex != EntryDescription.Index) return;
        var bal = new AddAccountingEntryDescription
        {
            RowIndex = dgv1.CurrentCell.RowIndex
        };
        bal.ShowDialog();
    }

在AddAccountingEntryDescription表单

public int RowIndex { get; set; }
 private void btnAdd_Click(object sender, EventArgs e)
    {
        AccountingEntry.RowCount = RowIndex;
        AccountingEntry.DescriptionToAdd = txtDescriptionToAdd.Text;
    }

1 个答案:

答案 0 :(得分:0)

这很简单。文本输入表格不必知道有关网格甚至其他形式的任何信息。它所要做的就是通过公共财产公开数据。在ShowDialog返回后,原始表单从该属性获取数据,并根据需要执行任何操作。如果您想将该文本放入网格中的单元格中,那么就像其他任何时候一样。