在 3 层架构中操作 datagridview 列

Manipulate datagridview column in 3 tier architecture

我目前在做实习生管理的项目。每个实习生都有项目。此外,每个项目都有 steps/points。如果实习生完成一个步骤,项目将增加其进度。所以基本上,每个项目都有一个进展。

我正在使用自定义 DataGridViewProgressColumn。将此列添加到我的数据网格视图后,我可以通过将其值设置为某个值来更改它的值。

//Last index of datagridview is progresscolumn.
dataGridView1.Rows[i].Cells[dataGridView1.ColumnCount - 1].Value = value;

这个值来自数据库,据我所知,我不应该从 UI 层访问数据库。但是datagridview在UI层。

我有2个解决方案:

  1. 在数据访问层设置 progresscolumn 的每个值:我认为这是不可能的,尽管我认为这是最好的解决方案:我只是无法更改-not placed- progressColumn 的值。

  2. 在UI层设置progresscolumn的每个值,大概是"working but against of architecture"解。

我该如何解决这个问题?谢谢。

无论如何,我只是使用了一个 returns int 值的 DAL 函数。该函数计算值并 returns 它。

dataGridView1.Rows[i].Cells[dataGridView1.ColumnCount - 1].Value = DAL.getValue(rowID);