取消spread farpoint的EnterCell事件
Cancel EnterCell event of spread farpoint
我的程序使用 spread farpoint 作为第 3 方控件,它有一个 TextBox 控件和一个用于显示数据的 Spread 控件。当用户更改传播中的活动单元格时,我想验证文本框不能为空。如果 TextBox 为空,则必须取消 EnterCell 事件并且 TextBox 必须获得焦点,并且传播的活动单元格不得更改。我被困在这里了。
目前我在 LeaveCell 事件中执行了验证,但它不起作用。 EnterCell 事件触发并传播仍然改变了活动单元格:(
If TextBox1.Text = String.Empty Then
MsgBox ("TextBox1 cannot blank")
TextBox1.Select()
'TextBox1.Focus() 'I have tried this function but still not working
End If
请支持我!
谢谢大家
据我所知,我们无法“取消”EnterCell 事件。然而,我发现我们可以做一些小技巧来实现它。
Private Sub spread_LeaveCell(sender as Object, e as LeaveCellEventArgs) Handles sprSheet.LeaveCell
If TextBox1.Text = String.Empty Then
MsgBox ("TextBox1 cannot blank")
'This is the trick
e.NewColumn = e.Column
e.NewRow = e.Row
Exit Sub
End If
'Other leave cell proceses..
End Sub
...
Private Sub spread_EnterCell(sender as Object, e as EnterCellEventArgs) Handles sprSheet.EnterCell
If TextBox1.Text = String.Empty Then
TextBox1.Select()
End If
Exit Sub
我的程序使用 spread farpoint 作为第 3 方控件,它有一个 TextBox 控件和一个用于显示数据的 Spread 控件。当用户更改传播中的活动单元格时,我想验证文本框不能为空。如果 TextBox 为空,则必须取消 EnterCell 事件并且 TextBox 必须获得焦点,并且传播的活动单元格不得更改。我被困在这里了。
目前我在 LeaveCell 事件中执行了验证,但它不起作用。 EnterCell 事件触发并传播仍然改变了活动单元格:(
If TextBox1.Text = String.Empty Then
MsgBox ("TextBox1 cannot blank")
TextBox1.Select()
'TextBox1.Focus() 'I have tried this function but still not working
End If
请支持我! 谢谢大家
据我所知,我们无法“取消”EnterCell 事件。然而,我发现我们可以做一些小技巧来实现它。
Private Sub spread_LeaveCell(sender as Object, e as LeaveCellEventArgs) Handles sprSheet.LeaveCell
If TextBox1.Text = String.Empty Then
MsgBox ("TextBox1 cannot blank")
'This is the trick
e.NewColumn = e.Column
e.NewRow = e.Row
Exit Sub
End If
'Other leave cell proceses..
End Sub
...
Private Sub spread_EnterCell(sender as Object, e as EnterCellEventArgs) Handles sprSheet.EnterCell
If TextBox1.Text = String.Empty Then
TextBox1.Select()
End If
Exit Sub