以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 字符可以转成时间吗? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=64251) |
-- 作者:cyrollin -- 发布时间:2015/2/8 20:53:00 -- 字符可以转成时间吗? 我的这个列是字符类型 设定了几个常用的时间,使用下拉列表选择出来,比如: 上午 09:00 上午 09:30 上午 10:00 下午 01:00 下午 01:30 请问可以把这种字符类型的转换成时间类型的吗,以方便我以后按时间先后排序. |
-- 作者:有点甜 -- 发布时间:2015/2/8 20:58:00 -- 加一个表达式列,设置表达式 substring(第四列,3,len(第四列)) |
-- 作者:cyrollin -- 发布时间:2015/2/8 21:06:00 -- 我增加了一个表达示列,输入了您的代码,但显示这样: |
-- 作者:有点甜 -- 发布时间:2015/2/8 21:07:00 -- 时间列,必须是字符列。字符列不会有你这问题。 [此贴子已经被作者于2015/2/8 21:07:27编辑过]
|
-- 作者:cyrollin -- 发布时间:2015/2/8 21:25:00 -- 哦,我把新增加的这一列,修改成了字符型, 现在我在前面一列选择出时间后,就会把数据自动填入新增的这一列, If e.DataCol.Name = "时间" Then If e.NewValue = Nothing Then e.DataRow("排序时间") = Nothing Else e.DataRow("排序时间") = Substring(e.DataRow("时间"),3,len(e.DataRow("时间"))) End If End If 显示 substring 未定义
|
-- 作者:有点甜 -- 发布时间:2015/2/8 21:29:00 -- e.DataRow("排序时间") = e.DataRow("时间").Substring(2)
|
-- 作者:cyrollin -- 发布时间:2015/2/8 21:31:00 -- works! |
-- 作者:cyrollin -- 发布时间:2015/2/8 21:35:00 -- but i can\'t understand why the above "substring" should be located at the back of e.datarow ? :( |
-- 作者:有点甜 -- 发布时间:2015/2/8 21:38:00 -- http://www.foxtable.com/help/topics/0240.htm
|
-- 作者:cyrollin -- 发布时间:2015/2/8 21:57:00 -- 之前好好的,不知道怎么现在出现这个提示了: 错误所在事件:表,派工表,DataColChanged 详细错误信息: System.Reflection.TargetInvocationException: 调用的目标发生了异常。 ---> System.Data.ReadOnlyException: 列“排序时间”为只读。 在 System.Data.DataRow.set_Item(DataColumn column, Object value) 在 System.Data.DataRow.set_Item(String columnName, Object value) 在 Foxtable.DataRow.set_Item(String string_0, Object value) 在 UserCode.DataColChanged(DataColEventArgs e) --- 内部异常堆栈跟踪的结尾 --- 在 System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) 在 System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) 在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) 在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) 在 Foxtable.DataTable.dataTable_0_ColumnChanged(Object sender, DataColumnChangeEventArgs e) |