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