Datagridview cellFormat 无法将旧字符串格式化为新字符串 - C#

Datagridview cellFormat is not working to Format from old string to new string - C#

我正在从 json 来源获取我的数据。然后我将它转换为 class 类型然后我将它设置为 datagridview 的数据源。

此列的值类似于:

12A12345

我希望能够像这样格式化它:

12-A-123-45WR

private void dgvListDrivers_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
    {
        if (e.ColumnIndex == 3)
        {
            int value;
            if (e.Value != null)
            {
                e.CellStyle.Format = "##-#-###-##WR"; 
                e.FormattingApplied = true;
            }
        }
    }

但是这段代码不起作用...

这里我可以解决问题:

 if (e.ColumnIndex == 4)
        {
            //int value;
            if (e.Value != null)
            {
                string value = e.Value.ToString();
                if(value.Length==8)
                    e.Value = string.Format("{0}-{1}-{2}-{3}WR", value.Substring(0, 2), value.Substring(2, 1), value.Substring(3, 3), value.Substring(6, 2));
                e.FormattingApplied = true;
            }
        }