leikaihua 发表于 2014-12-25 13:13:00

绑定数据库字段为时间如何处理

   vsFlex8.ocx com

1、当绑定数据库的字段类型为时间时,显示如图。 目前设置对齐CellAlignment都无效。请问如何实现?
2、虽然通过格式化 可以实现 yyyy-mm-dd hh:mm:ss 的时间格式,但是我想让其默认就是此格式,请问通过 c1表格可以设置吗?如果不能数据库如何设置可以使c1读出的日期时间 为: yyyy-mm-dd hh:mm:ss 。数据库为 ACCESS

Alice 发表于 2014-12-25 19:32:00

回复 1楼leikaihua的帖子

1.可以设置单元格的align或是列的align。
单元格语法:
vsFlexGrid.Cell(Setting As CellPropertySettings, , , , ) [ = Value ]
里面的参数的常量是FlexcpAlignment,值是2。
具体看文档:
http://helpcentral.componentone.com/nethelp/vsflexgrid8/#!Documents/cellproperty.htm
2.flexgrid不能设置,因为要考虑到整个flexgrid单元格的类型有很多。
可以设置ColFormat给列设置format。文档参考
http://helpcentral.componentone.com/nethelp/vsflexgrid8/#!Documents/step2dataformatting.htm

有关数据库的设置日期默认读出格式,你可以上网查找相关资源。

leikaihua 发表于 2014-12-27 08:39:00

回复 2楼Alice的帖子

使用 vsFlexGrid.Cell(2, -1,3, ,)=1   设置 对齐方式 时 是无效 ,当字段为日期时间型时。
比如上面设置为 左中对齐,但是表格还是显示如顶楼的图片一样。

leikaihua 发表于 2014-12-27 08:53:00

还有 我已经在ACCESS数据库中将时间格式改为了:yyyy-mm-dd hh nn ss 了,数据库已经按照这个格式显示了,但是c1在绑定之后 依旧显示为 如顶楼的图片一样的。

Alice 发表于 2014-12-29 11:04:00

回复 4楼leikaihua的帖子

参考代码:
' format dates
      fg.ColFormat(1) = "yyyy-mm-dd"
      fg.ColFormat(2) = "Medium Date"
      fg.ColFormat(3) = "Medium Time"

      ' set some cells
      fg.TextMatrix(1, 1) = #7/4/1969#
      fg.TextMatrix(1, 2) = #7/4/1969#
      fg.TextMatrix(1, 3) = #7/4/1969#

      ' display results:   
      Dim i%
      Debug.Print "Format"; Tab(20); "Content"; Tab(40); "Display"
      Debug.Print "-----------"; Tab(20); "-----------"; Tab(40); "-------------"
      For i = 1 To 3
            Debug.Print fg.ColFormat(i); Tab(20); _
                        fg.Cell(flexcpText, 1, i); Tab(40); _
                        fg.Cell(flexcpTextDisplay, 1, i)
Next

具体文档参考:
http://helpcentral.componentone.com/nethelp/vsflexgrid8/#!Documents/colformatproperty.htm
页: [1]
查看完整版本: 绑定数据库字段为时间如何处理