Foxtable(狐表)用户栏目专家坐堂 → 为什么提示窗口会弹出四次


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

主题:为什么提示窗口会弹出四次

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


加好友 发短信
等级:婴狐 帖子:89 积分:720 威望:0 精华:0 注册:2015/4/28 10:09:00
为什么提示窗口会弹出四次  发帖心情 Post By:2015/8/26 15:29:00 [只看该作者]


老师,您好。

我在某表的DataColChanging事件中加入了如下代码,目的是在点击【核准】复选框时首先判断是否角色有权限选中或者取消,如果有权限,然后弹出提示框,避免误操作。

如果在表格中直接点击【核准】复选框,一切工作正常。

但是我做了一个窗口,窗口中的【核准】复选框是绑定到表中的【核准】列的,如果在窗口中点击时,就会弹出多次避免误操作的提示框。
弹出的提示窗口中,如果选是,那么会再次弹出,继续选是,就不会在弹出。
弹出的提示窗口中,如果选择否,那么会再次弹出,继续选否,第三次弹出,继续选否,会第四次弹出,再次选否,就不会再弹出了。

麻烦老师帮忙,谢谢!

If e.DataCol.Name  = "核准"
        If e.DataRow("核准") = False Then
            If User.IsRole("QA核准") = False Then
                e.Cancel = True
            Else
                Dim Result As DialogResult
                Result = MessageBox.Show("注意 ! 此操作不可撤销 ! 您确认要进行核准吗 ? ", "删除确认", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
                If Result = DialogResult.No Then
                    e.Cancel = True
                End If
            End If
        ElseIf e.DataRow("核准") = True Then
            If User.IsRole("后台维护") = False AndAlso User.IsRole("QA审批") = False Then
                e.Cancel = True
            Else
                Dim Result As DialogResult
                Result = MessageBox.Show("注意 ! 此操作不可撤销 ! 您确认要进行核准吗 ? ", "删除确认", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
                If Result = DialogResult.No Then
                    e.Cancel = True
                End If
            End If
        End If
End If


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/26 16:28:00 [只看该作者]

Systemready = False

If e.DataCol.Name  = "核准"
    If e.NewValue = False Then
        If User.IsRole("QA核准") = False Then
            e.Cancel = True
        Else
            Dim Result As DialogResult
            Result = MessageBox.Show("注意 ! 此操作不可撤销 ! 您确认要进行核准吗 ? ", "删除确认", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
            If Result = DialogResult.No Then
                e.Cancel = True
            End If
        End If
    ElseIf e.NewValue = True Then
        If User.IsRole("后台维护") = False AndAlso User.IsRole("QA审批") = False Then
            e.Cancel = True
        Else
            Dim Result As DialogResult
            Result = MessageBox.Show("注意 ! 此操作不可撤销 ! 您确认要进行核准吗 ? ", "删除确认", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
            If Result = DialogResult.No Then
                e.Cancel = True
            End If
        End If
    End If
End If
Systemready = True


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


加好友 发短信
等级:婴狐 帖子:89 积分:720 威望:0 精华:0 注册:2015/4/28 10:09:00
  发帖心情 Post By:2015/8/26 17:11:00 [只看该作者]

我去测试一下,谢谢红老师。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/26 17:28:00 [只看该作者]

可以打开,你把bin文件夹删除看看

 


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


 回到顶部