我在DataRepeater中有一组标签。标签从SQL数据库中的表中获取它们的值(假设GetSQLResults从SQL数据库获取数据并返回DataTable)。
Dim salesDataTable As DataTable = GetSQLResults()
对于绑定
SalesLabel.DataBindings.Add("Text", salesDataTable , "Sales")
其中SalesLabel是表单中的标签,“Sales”是数据库中列的名称。
我想要做的是将美元货币格式应用于来自数据库的此Sales值。我不知道如何将格式信息与我上面为DataBinding编写的命令结合起来。它是一个Windows窗体应用程序,我使用VB .Net。任何帮助将不胜感激。
答案 0 :(得分:2)
Binding
类具有FormatString
属性,您应该能够提供所需的标准或自定义format string。
我想也许是这样的:
Dim salesBinding As Binding = new Binding("Text", salesDataTable , "Sales")
salesBinding.FormatString = "C"
SalesLabel.DataBindings.Add(salesBinding)
会做的伎俩。
答案 1 :(得分:0)
我根据nkvu回答和http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/c860168f-46e5-4786-a68d-ac69c6a7a248/
上的帖子尝试了此操作Dim WithEvents salesBinding As Binding
salesBinding = New Binding("Text", salesDataTable , "Sales")
SalesLabel.DataBindings.Add(salesBinding)
Private Sub salesBinding_Format(ByVal sender As Object, ByVal e As System.Windows.Forms.ConvertEventArgs) Handles salesBinding .Format
If e.Value Is DBNull.Value Then
Else
e.Value = Format(e.Value, "c")
End If
End Sub
这对我有用。