【问题标题】:Display Data with Format in Datagridview在 Datagridview 中以格式显示数据
【发布时间】:2016-09-01 11:22:30
【问题描述】:

假设您在 Datagridview 中有一个列,其中包含作为数据的负数和正数。

如何在左括号和右括号中显示带负数的数字? 例如 -5.00 将变为 (5.00)

我怎样才能做到这一点? TYSM

【问题讨论】:

  • 你是说自动?您可以在添加行之前进行检查
  • 什么意思?我在我的表的某些字段上做了一些 mysql 命令会有一个负输出,所以我将在哪里调整?在Datagidview,Update,MySQL?
  • 我会尝试在 SQL Select 语句中实现它。增加 2 个你
  • 我不知道该怎么做:(

标签: mysql vb.net datagridview datagridviewcolumn


【解决方案1】:

您可以为该列设置默认格式:

DataGridView1.Columns(n).DefaultCellStyle.Format = "#,##0.00;(#,##0.00)"

更多关于格式化的信息可以在here找到。

【讨论】:

  • 它有效,但为什么呢?能解释一下格式字符串的含义吗?
  • 我已经添加了一个指向 MSDN 文档关于此格式的链接。当然,他们会比我更清楚地解释清楚。
  • 请问先生?如何用逗号和小数对其进行格式化?像这样 (1,111,111.00)
  • 我把这段代码放在 Datagridview 单元格格式中,但是为什么 datagridview 看起来在闪烁?
【解决方案2】:

回答你的cmets。

在 SQL 中添加到您的查询中,如下所示:

SELECT IF(VALUE<0, ABS(VALUE), VALUE)

或者

在 vb.net 中做:

Private Sub dataGridView1_CellFormatting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellFormattingEventArgs) _
    Handles dataGridView1.CellFormatting

    If dataGridView1.Columns(e.ColumnIndex).Name.Equals("YOURCOLUMN") Then
        If CInt(e.Value) < 0 Then
            e.Value = "(" & Math.Abs(e.Value).ToString("N") & ")"
        End If
    End If

End Sub

【讨论】:

  • 请问先生?如何用逗号和小数格式化它?像这样 (1,111,111.00)
  • 先生请帮我解决我的问题
猜你喜欢
  • 1970-01-01
  • 2014-04-16
  • 1970-01-01
  • 2014-01-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多