以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=51193)

--  作者:yangxing
--  发布时间:2014/5/21 16:10:00
--  [求助]

\'Dim dr As DataRow = e.DataRow
If e.DataRow = " "   Then \'如果不是新增行
   \' Return \'那么返回
ElseIf e.IsNull("编号") Then \'如果没有输入日期
   \' e.Cancel = True \'取消保存此行
   MessageBox.Show("必须输入编号!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    \'Return
ElseIf  e.IsNull("姓名") Then
   MessageBox.Show("必须输入姓名!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)

ElseIf  e.IsNull("岗位名称") Then
   MessageBox.Show("必须输入岗位名称!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)

ElseIf  e.IsNull("业务名称") Then
   MessageBox.Show("必须输入业务名称!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
 
ElseIf  e.IsNull("业务步骤") Then
   MessageBox.Show("必须输入业务步骤!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)

ElseIf  e.IsNull("汇总时间") Then
   MessageBox.Show("必须输入汇总时间!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)

ElseIf  e.IsNull("频率") Then
   MessageBox.Show("必须输入频率!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)

End If

 

 

如何控制一个单元格为空的时候返回值“需要填写”,在哪个属性里写?


--  作者:Bin
--  发布时间:2014/5/21 16:16:00
--  
不是很理解你的意思,你是想实现什么效果? 
--  作者:有点甜
--  发布时间:2014/5/21 16:28:00
--  

 beforesavedatarow事件,如下代码

 

For Each dc As DataCol In e.DataTable.DataCols
    If e.DataRow.Isnull(dc.name) Then
        msgbox(dc.name & " 需要填写")
        e.cancel = True
        Return
    End If
Next


--  作者:ybmjy
--  发布时间:2014/5/21 16:29:00
--  

哥喂,你要说清楚,是在表中还是在窗口控件中

 


--  作者:有点甜
--  发布时间:2014/5/21 16:33:00
--  
以下是引用ybmjy在2014-5-21 16:29:00的发言:

哥喂,你要说清楚,是在表中还是在窗口控件中

 

 

呃,对哪个表设置,就在哪里添加代码,反正你找 beforesavedatarow 事件即可。


--  作者:yangxing
--  发布时间:2014/5/21 16:53:00
--  [讨论]
就是让表内的单元格为空时,在保存表的时候提示某个单元格为空不能保存,因为每个单元格都是真值,不填写会发生错误。
--  作者:有点甜
--  发布时间:2014/5/21 16:56:00
--  

 好吧,你在表属性->事件->beforesavedatarow 写代码

 

For Each dc As DataCol In e.DataTable.DataCols
    If e.DataRow.Isnull(dc.name) Then
        msgbox(dc.name & " 需要填写")
        e.cancel = True
        Return
    End If
Next


--  作者:kaiyu
--  发布时间:2014/5/21 16:58:00
--  

直接在列属性设置不为空就行


--  作者:yangxing
--  发布时间:2014/5/21 17:02:00
--  


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20140521170141.jpg
图片点击可在新窗口打开查看

还是有错啊


--  作者:Bin
--  发布时间:2014/5/21 17:04:00
--  
没有可能的啊. 7楼的代码没道理会出现这个问题.