- PR -

ELTabelle MultiRow4.0J でのセルのロック方法

1
投稿者投稿内容
とみとみ
会議室デビュー日: 2007/08/01
投稿数: 7
投稿日時: 2007-08-01 19:58
VisualStudio2005
ELTabelle MultiRow4.0J

こんにちは、早速質問です。
10列x50行のELTabelleのシートがあります。
2列目をコンボボックスにしています。
コンボボックスの1項目目を選択した時に4列目をロックしたいのです。
そのほかの項目を選択した時は4列目のロックをはずしたいのです。
この「選択した時に」とゆーのができません。
Click時,CellValueChanged時,CellNotify時のタイミングでやってみてもダメでした。
どうもセルが移動しないと反映されないみたいな感じです。
なんかいい方法ありますでしょうか?
バッジオ
会議室デビュー日: 2007/08/02
投稿数: 1
投稿日時: 2007-08-02 15:57
CellNotifyイベント内でコンボで選択した内容を確定させた後、CellValueChangedイベントで実際にロックしたり、ロック解除したりします。
よーするに、コンボでなんぼ選択したゆーても確定されてなければCellValueChangedイベントが動かんというわけでんなぁ

コード例
Select Case e.Name
Case GrapeCity.Win.ElTabelle.CellNotifyEvents.DropClose
GrdM.KeyAction(GrapeCity.Win.ElTabelle.MKeyAction.EndEdit)
End Select

とみとみ
会議室デビュー日: 2007/08/01
投稿数: 7
投稿日時: 2007-08-02 16:16
ふむふむ、なるほど・・・。
早速やってみます!!
とみとみ
会議室デビュー日: 2007/08/01
投稿数: 7
投稿日時: 2007-08-02 17:45
早速やってみました。結果は、うまくいきませんでした。

教えていただいたコード例を コントロール名_CellNotifyイベント に下記のように記述してみました。

If コントロール名.ActivePosition.Column = 1 then
'2列目の時
Select Case e.Name
Case GrapeCity.Win.ElTabelle.CellNotifyEvents.DropClose
コントロール名.KeyAction(GrapeCity.Win.ElTabelle.MKeyAction.EndEdit)
End select
End If

で、動かしてみました。
まずコンボボックスの2項目目を選択しました。
次にコンボボックスの3項目目を選択しました。
ところが、3項目目を選択しているのに、2項目目が選択されてしまいます。
で、どうもCellValueChangedイベントがワンテンポ遅れて発生する感じです。

ちなみに、コンボボックスの列は編集は不可にしてあります(選択だけにしたい)。
objComboBoxEditor.Editable = False をFormのLoad時にかましています。

何か心当たりとかございますでしょうか?
1

スキルアップ/キャリアアップ(JOB@IT)