Foxtable(狐表)用户栏目专家坐堂 → [求助]老问题有新问题!


  共有11622人关注过本帖树形打印复制链接

主题:[求助]老问题有新问题!

帅哥哟,离线,有人找我吗?
gaoyong30000
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
[求助]老问题有新问题!  发帖心情 Post By:2011/8/25 16:07:00 [只看该作者]

e.Form.Controls("TextBox14").Value = e.Sender.value + 5000

 

之前请教过这样一个代码,后来通过表达式解决了。但是表达式只读,不太灵活(有时候有特殊情况需要改数据)

 

现在我把这个代码加进了  客户档案信息窗口里的 当前里程文本框 

发现一个问题,就是我如果在文本框输入数据,与之关联的下次保养公里数并没有实时变化。

                    后来看了帮助里有个 e.Sender.WriteValue()  但是试了好多次也没成功!

 

 

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:内控系统21.rar


 回到顶部
帅哥哟,离线,有人找我吗?
gaoyong30000
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2011/8/25 17:23:00 [只看该作者]

如何解决~?


 回到顶部
帅哥哟,离线,有人找我吗?
gaoyong30000
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2011/8/25 19:48:00 [只看该作者]

搞了一下午也没解决这问题 哎!


 回到顶部
帅哥哟,离线,有人找我吗?
czy
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2011/8/25 19:54:00 [只看该作者]

TextBox14控件的ValueChanged代码设置成:e.Sender.WriteValue()不行吗?

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2011/8/25 19:56:00 [只看该作者]

不过我感觉还是直接写入表中的下次保养公里数中好。

 回到顶部
帅哥哟,离线,有人找我吗?
布莱克朱
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:623 积分:3897 威望:0 精华:0 注册:2011/8/3 22:13:00
  发帖心情 Post By:2011/8/25 20:04:00 [只看该作者]

如果我输入5000,那么结果是多少,10000?

 回到顶部
帅哥哟,离线,有人找我吗?
gaoyong30000
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2011/8/25 20:06:00 [只看该作者]

错误代码位置:窗口,客户档案信息,TextBox14,ValueChanged

System.NullReferenceException: 未将对象引用设置到对象的实例。
   在 Microsoft.VisualBasic.CompilerServices.Symbols.Container.InvokeMethod(Method TargetProcedure, Object[] Arguments, Boolean[] CopyBack, BindingFlags Flags)
   在 Microsoft.VisualBasic.CompilerServices.NewLateBinding.CallMethod(Container BaseReference, String MethodName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack, BindingFlags InvocationFlags, Boolean ReportErrors, ResolutionFailure& Failure)
   在 Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateCall(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack, Boolean IgnoreReturn)
   在 UserCode.ValueChanged_0cacff6f(ControlEventArgs e)

 

 

出错~。。。 e.Sender.WriteValue()

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
gaoyong30000
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2011/8/25 20:06:00 [只看该作者]

表我也试验过 没用  代码如下  您看下 datacolchanged

 

Select Case e.DataCol.Name
    Case "当前里程","下次保养公里数"
        Dim dr As DataRow
        If dr("当前里程")="" Then
            dr("下次保养公里数")= 3000
        Else
            dr("下次保养公里数")= dr("当前里程") + 5000
        End If
End Select

[此贴子已经被作者于2011-8-25 20:06:44编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
gaoyong30000
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2011/8/25 20:16:00 [只看该作者]

以下是引用布莱克朱在2011-8-25 20:04:00的发言:
如果我输入5000,那么结果是多少,10000?

对的  我现在这个窗口有个毛病  比如 输入了5000 然后点击  TextBox14  就会出现10000

但是如果此时 我再修改5000的数据  TextBox14 还是显示10000  有问题!

 

最好实时的 例如:我想输入5000  当我输入5时  TextBox14 是5005;  50时 是5050.。。。。。


 回到顶部
帅哥哟,离线,有人找我吗?
布莱克朱
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:623 积分:3897 威望:0 精华:0 注册:2011/8/3 22:13:00
  发帖心情 Post By:2011/8/25 20:32:00 [只看该作者]

Select Case e.DataCol.Name
    Case "当前里程","下次保养公里数"
        Dim dr As DataRow =e.DataRow
        If dr("当前里程")=0 Then
            dr("下次保养公里数")= 3000
        Else
            dr("下次保养公里数")= dr("当前里程") + 5000
        End If
End Select

 

你看看首先必须要定义 e.datarow  ,第二个就是dr("当前里程")=0  因为是数值必须为零,而不是空值  也就是= ""  ,明白不?


 回到顶部
总数 13 1 2 下一页