2

我一直在网上搜索,但找不到答案。

我有一个有界的 BindingSource 的 DataGridView,它有一个自定义类的对象列表。在类的字段中,我有一个字符串字段,我想使用它来显示

Path.GetFileName();

因为它包含整个文件路径,而我想要的只是显示文件的名称,但在有界对象中保持文件路径(即有界数据完整)。

有什么方法可以做到这一点(格式,模板,样式,...)?因为每当我更改单元格的值字段时,它都会更改对象的值(这是逻辑)。

提前谢谢了

4

2 回答 2

5

在 DataGridView 上使用DataGridView.CellFormatting事件。这将为您提供一个DataGridViewCellFormattingEventArgs对象,其中包含有关当前单元格的信息,包括行和列以及未格式化的值。您将 Value 属性更新为格式化值并将 FormattingApplied 设置为 true,DataGridView 将呈现该值。

像这样的东西:

private void dataGridView1_CellFormatting(object sender, 
    DataGridViewCellFormattingEventArgs e)
{
    if (e.ColumnIndex == 0) // Check for the column you want
    {
        e.Value = Path.GetFileName(e.Value.ToString());
        e.FormattingApplied = true;
    }
}
于 2010-08-09T11:56:58.250 回答
0

该类Binding有一个事件处理程序Format()Parse()您可以在其中定义如何以两种方式格式化数据。

于 2010-08-09T11:55:00.323 回答