お世話になります。ド素人な質問ですみません。
C#なのですが例えばForm1で記述した関数(関数って呼ぶのかわかりませんが)をForm2で実行するにはどのようにしたらよいのでしょうか?
ネットで検索してみてもなかなかヒットしないのでこちらでお聞きします。
public partial class Form1 : Form
{
public Form_OzzCalc()
{
InitializeComponent();
}
private void hoge()
{
~
}
}
このhoge()という関数を別のフォーム(例えばForm2)で呼び出して使うにはどのようにしたらよいのでしょうか?
privateをpublicに変更してもForm2ではこの関数を記述すると「'hoge'は現在のコンテキスト内に存在しません」と出ます。
何か参考になるサイトでも構いません。よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
この記述方法ですとForm1のインスタンス経由で関数を実行します
Form2側からですと
((Form1)Application.OpenForms["Form1"]).hoge();
といった具合です
下のように Form1クラスにスタティック(静的)関数を作成すれば
public static void foo()
{
}
Form2側からは
Form1.foo();
といった具合で実行できます
MessageBoxのShowがこの静的実装がされています
ありがとうございます!
((Form1)Application.OpenForms["Form1"]).hoge();
としてForm1のほうをpublic void hoge()にしたらうまく動作しました。
なぜかstaticをつけたらhoge()関数の中がエラーになりましたが、外したらうまくいきました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- C言語・C++・C# PC画面を録画するプログラムでdllの読み込みエラー 1 2023/04/22 08:31
- JavaScript Javascript初心者|jQueryの.val()で値を取得し複数の要素を連結させる方法知りたい 2 2022/06/02 12:06
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- Visual Basic(VBA) vba Sleep関数について教えてください 1 2023/01/18 10:18
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
C#にて別クラスの関数を使いたい
C言語・C++・C#
-
【C#】別フォームも同時に閉じるには?
C言語・C++・C#
-
-
4
他のフォームから別のフォームのサブルーチンを呼び出す
Visual Basic(VBA)
-
5
フォームの再読み込み
Visual Basic(VBA)
-
6
インスタンス参照でアクセスできない。代わりに型名?
C言語・C++・C#
-
7
C# 超初心者です。 this.Refresh();という文を使いたいです
C言語・C++・C#
-
8
C#でフォームのオブジェクト名を変数名で指定
C言語・C++・C#
-
9
C# 別なフォームへ値を渡す (初心者です)
その他(プログラミング・Web制作)
-
10
Labelコントロールに数字を代入する
C言語・C++・C#
-
11
【C#】 あるイベントから別イベントを呼び出す。
その他(プログラミング・Web制作)
-
12
ピクチャーボックスの大きさに合わせて画像を表示
Visual Basic(VBA)
-
13
他フォームのクリックイベント取得
Visual Basic(VBA)
-
14
C#のループでtextboxに値を入れる方法
C言語・C++・C#
-
15
「指定されたキャストは有効ではありません。」とエラーが出てしまいます。
Microsoft ASP
-
16
CloseとDisposeの違い
Visual Basic(VBA)
-
17
DataGridViewのチェックボックスのON、OFFの判定方法
C言語・C++・C#
-
18
C#で別のFormへ複数の値を返そうとしているのですがうまくいきません
その他(プログラミング・Web制作)
-
19
【C#】textBoxの指定行のデータを削除
C言語・C++・C#
-
20
C# ログイン画面からメイン画面への画面遷移について
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBA 作業後に選択範囲...
-
別のフォームで記述している関...
-
VBAでのユーザフォームの表示有...
-
エクセル マクロ 別シートから...
-
ACCESSで別DBにあるクエリを...
-
GetAsyncKeyState() を利用する...
-
ステップモードの動作確認方法
-
excel2010でボタンが反応しなく...
-
エクセルで条件をつけて図形を...
-
Switchのわんことあそぼ、めざ...
-
自動入力ツール「UWSC」について
-
エクセルでの6ヶ月平均の出し方
-
白猫プロジェクトのリセマラ
-
GPS位置情報で2点の中間地点の...
-
月末日に、各月の合計温度を出す
-
セカンドライフ アカウント登録
-
メフィスト賞の応募歴は無しだ...
-
Googleマップなどの地図サービ...
-
ワードで、グレーの部分しか入...
-
Excelで連番が増えるごとに数式...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA 作業後に選択範囲...
-
別のフォームで記述している関...
-
Sub Auto_Open() 実行されない
-
最小化ボタンで最小化したフォ...
-
ACCESSで別DBにあるクエリを...
-
Excelで、チェックボックスにチ...
-
円の中に等間隔に線を引くには
-
VBAでのユーザフォームの表示有...
-
エクセル マクロ 別シートから...
-
Excel vba 条件分岐 空白セルが...
-
ascW関数の結果がおかしい
-
Excelのマクロ実行後に動作が重...
-
メニューバーのイベントが2回...
-
ExcelVBAで毎月月初の最初にBoo...
-
Excel VBAのステップイン
-
ExcelVBA 日付変更
-
excel2010でボタンが反応しなく...
-
エクセルVBAのコードで質問です...
-
ExcelVBA ドロップボックスで月...
-
エクセル VBA
おすすめ情報