
VB.net 2010でプログラムを作成して居ます。
やりたい内容が同じで、同じコントロールを幾つか使う時、処理は共通にする事があると思います。
Case 1
sub_Std_Vlt_Dsp(0, frmMain.dgv_Std_100) '100Vの規格編集表示
Case 2
sub_Std_Vlt_Dsp(1, frmMain.dgv_Std_120) '120Vの規格編集表示
Case 3
sub_Std_Vlt_Dsp(2, frmMain.dgv_Std_200) '200Vの規格編集表示
この場合、sub_Std_Vlt_Dsp()は
Sub sub_Std_Vlt_Dsp(ByVal iVolt As Integer, ByVal dgvList As System.Windows.Forms.DataGridView)
'規格テーブルの編集/Edit of standars.
'入力/Input
'iVolt as Integer 電圧ID/Voltage ID
'dgvList as DataGridView 表/List
dgvList.Rows.Clear() '表示内容の初期化
'セルの設定 Setting of each cell
dgvList.Columns(0).Width = 30
dgvList.Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
dgvList.Columns(0).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
この様に記述する事により、各々のデーターグリッドビューをdgvListとして処理出来ます。
そこで、割り込みの時なのですが、やはり複数のデーターグリッドビューのCellEndEditでの処理が同じなので、上記例の様に処理する事は可能でしょうか。
現在は各データーグリッドビュー毎に以下の様なコーディングをして居ます。
Private Sub dgv_Std_200_CellEndEdit(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv_Std_200.CellEndEdit
'電圧毎の規格編集処理
'0:規格命令 1:結果命令 2:倍率 3:符号(1:マイナス可) 4:表示(1:非表示)
'5:単位 6:項目 7:最大値 8:最小値
bUpdItm = True '編集ありフラグTrue設定
btnStdUpdate.Enabled = True '更新ボタン利用可
btnStdCancel.Enabled = True '取り消しボタン利用可
Select Case e.ColumnIndex 'コラム別処理/Process by each column
Case 0 '列0/Column 0 規格コマンド
bStatus = fncChkHex(dgv_Std_200(0, e.RowIndex).Value, 0, 2) 'コマンド 空白か2桁のヘキサ文字
Case 1 '列1/Column 1 結果コマンド/Result command
bStatus = fncChkHex(dgv_Std_200(1, e.RowIndex).Value, 0, 2) 'コマンド 空白か2桁のヘキサ文字
処理内容が各データーグリッドビュー同じなので一つの割り込み先にまとめたいと思っています。
上記の dgv_Std_200() を何らかの方法で他のデーターグリッドビューの時でも使える様にしたいのです。
なお、Handles の所に他のデーターグリッドビューのCellEndEditの飛び先を追加すれば、この割り込み処理に飛べる事は分つています。
直接先の例の様にコントロールの継承で無くても、例えばデーターグリッドビューの違いを番号等で伝えてもらつても構いません。
以前使って居たC++Builderは割り込み元のIDが取り込める様に成っていました。
どなたか、お分かりに成る方が居られましたらお教え下さい。
No.1ベストアンサー
- 回答日時:
DataGridViewが異なるだけで、同じ処理を行うなら
下記のように、処理対象のDataGridViewを表す変数を宣言して
その変数に対して処理を行えば、異なるDataGridViewのイベントを共通化出来ます。
Dim dgv As DataGridView = CType(sender, DataGridView)
ご回答有難うございました。
先ほどTextBoxを使って確認した所、動作しました。
明日、会社で実装してみたいと思います。
多分出来るとしたらsenderかeしか無いと思いその2っをネットで探していたのですが、CTypeなんですね。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Excel(エクセル) B列に文字がはいったらA列に数字が入るマクロードを完成させたい 4 2023/04/21 01:58
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) vbaでセルに入力したときに,その横にあるセルを保護し入力不可にするマクロを作りたいです。 2 2022/04/24 20:59
- Excel(エクセル) Excel2019 マクロを使用し画像を貼り付けした際のリンク切れについて 2 2022/11/15 16:14
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/08 15:45
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・昔のあなたへのアドバイス
- ・字面がカッコいい英単語
- ・許せない心理テスト
- ・歩いた自慢大会
- ・「I love you」 をかっこよく翻訳してみてください
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・はじめての旅行はどこに行きましたか?
- ・準・究極の選択
- ・この人頭いいなと思ったエピソード
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラム言語FortranとCの違...
-
組み込みCプログラムで実数型
-
64ビット化による処理速度低下...
-
マイコンのビット数とクロック数
-
携帯電話の略語であるMBって英...
-
GB と Gbの違いの意味
-
実行計画の「COST」と「BYTE」...
-
512e/4K HDD とは?
-
KBとMB
-
16bitはダイナミックレンジが97...
-
速度の単位?
-
JIS、SHIFT-JIS、EUCはなぜでき...
-
HDDの容量が320Gなのに298Gしか...
-
EXCELでの16進数取り出し、上...
-
メガバイト/秒、バイト/秒、キ...
-
Excel_VBAで改行コードの無いフ...
-
【有効数字について】 授業で、...
-
2進数の問題
-
IBM漢字とUTF-8の変換について
-
テキストの半角文字を全部削除...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラム言語FortranとCの違...
-
組み込みCプログラムで実数型
-
MIPS と クロック周波数の換算方法
-
COM1(RS232C)とUSB仮想COMポー...
-
ステート数とは
-
PICマイコンのプログラムについ...
-
arduino
-
64ビット化による処理速度低下...
-
CPU、Z80からステート数から...
-
任天堂64の64 CPUの仕...
-
VBSとVBA
-
アセンブリ言語で。
-
+=と÷=の処理速度の謎を教え...
-
VBAでのコントロール操作
-
命令網羅率の計算問題です
-
CPUのHTについて教えてください。
-
MFCのエディットボックス上書き...
-
応用情報技術者試験問題の解き...
-
マイコンのビット数とクロック数
-
なぜ、i++なのか?(ものすごく...
おすすめ情報