MultiRow下拉列表点击事件
各位亲,大家好,我是技术小白啦,又来向大家请教问题咯,问题描述如下~————————————————————————————————————————————————————————
现在在Multirow里面有一个下拉列表控件(详情见图1)
实现要求:只要承认区分为0的时候,可以填写否认理由,其余不行
下面是我自己为了实现它而进行的一些尝试及结果
1.在mrwMain_CellLeaveChangeValue的方法里写如下代码(亲测无效)
Select Case e.CellName
Case CELSNSKB 'M承認区分
If CStr(Me.mrwMain.Rows(e.RowIndex).Cells(CELSNSKB).Value) = "0" Then
Me.mrwMain.Rows(e.RowIndex).Cells(CELRIYUU).Enabled = True
Else
Me.mrwMain.Rows(e.RowIndex).Cells(CELRIYUU).Enabled = False
End If
End Select
2.在mrwMain_CellValueChanged写差不多的代码(但是不是点击下拉列表就马上实现的,鼠标需要点击其他控件才可以。。。。。)
3.在CellContentButtonClick写相关代码,点击下拉列表根本不会进去的嘎。。。
以上,谢谢~麻烦亲爱的们可以回复下哦
请尝试使用CellEditedFormattedValueChanged事件试验一下 请尝试使用CellEditedFormattedValueChanged事件试验一下 robert 发表于 2016-4-11 13:59
请尝试使用CellEditedFormattedValueChanged事件试验一下
谢谢亲,方法应该是可行的,能看看我代码有上面问题吗?
(CELRIYUU是理由哈)
问题: 每次点击下拉列表,不管选择什么,获取出来的CELSNSKB 的值都是“”
———————————————————————————————————————————————————————————————————————
Private Sub mrwMain_CellEditedFormattedValueChanged(sender As Object, e As GrapeCity.Win.MultiRow.CellEditedFormattedValueChangedEventArgs) Handles mrwMain.CellEditedFormattedValueChanged
Select Case e.CellName
Case CELSNSKB 'M承認区分
If Me.mrwMain.Rows(e.RowIndex).Cells(CELSNSKB).DisplayText = "0" Then
Me.mrwMain.Rows(e.RowIndex).Cells(CELRIYUU).Enabled = True
Else
Me.mrwMain.Rows(e.RowIndex).Cells(CELRIYUU).Enabled = False
End If
End Select
End Sub
感觉把DisplayText属性换成EditedFormattedValue 属性应该更准确,因为你好像是要取正在编辑(但是还没有被保存的)的值。 robert 发表于 2016-4-11 17:11
感觉把DisplayText属性换成EditedFormattedValue 属性应该更准确,因为你好像是要取正在编辑(但是还没有被 ...
嗯嗯,实现了呢,太感谢啦~:hjyzw:
虾仔猫 发表于 2016-4-11 19:46
嗯嗯,实现了呢,太感谢啦~
非常感谢您的反馈。
替@robert和你说不用客气。
页:
[1]