
お世話になります。ド素人な質問ですみません。
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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
C# 別なフォームへ値を渡す (初心者です)
その他(プログラミング・Web制作)
-
「指定されたキャストは有効ではありません。」とエラーが出てしまいます。
Microsoft ASP
-
C# シリアル通信でデータ受信時の欠損について
C言語・C++・C#
-
-
4
C#にて別クラスの関数を使いたい
C言語・C++・C#
-
5
CloseとDisposeの違い
Visual Basic(VBA)
-
6
C# 超初心者です。 this.Refresh();という文を使いたいです
C言語・C++・C#
-
7
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
8
TextBoxに文字を書いても表示されない
Visual Basic(VBA)
-
9
他クラスからForm1内コントロルの操作方法を教えて(C#プログラミン
その他(プログラミング・Web制作)
-
10
C#において、同じインスタンスを何度もnewしてよいでしょうか。
その他(プログラミング・Web制作)
-
11
c# 文字列の最後から1文字削除したい
C言語・C++・C#
-
12
visualstudio C# テキストボックスの数値を取得して計算する方法を教えてください。
Microsoft ASP
-
13
Hideについて(.NET)
Visual Basic(VBA)
-
14
フルパスから最後のディレクトリ名を取得したい。
Visual Basic(VBA)
-
15
データグリッドビューの一番最初の行に列を追加したい
Visual Basic(VBA)
-
16
ラベルの文字列の長さが変わったときに、ラベル位置を自動で変更する方法
C言語・C++・C#
-
17
C# インスタンスの破棄
その他(プログラミング・Web制作)
-
18
C#で起動時のフォームを非表示にした後、Showで表示したいのですが
その他(プログラミング・Web制作)
-
19
フォームの存在をチェックする方法
Visual Basic(VBA)
-
20
同じソリューション内の別のプロジェクトのメソッド呼び出し
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba Replace関数について教えて...
-
CSSが全く分かりません、お助け...
-
CPUが16bitでも32bitOSでコンパ...
-
最初に聞かれたこと
-
c言語の問題の説明、各所ごとに
-
Cのオブジェクトファイルの逆ア...
-
C言語 関数、変数の宣言について
-
C言語について。
-
C言語でファクト関数を使わずに...
-
プログラミング 素数か素数では...
-
あってる
-
DNCL(共テ用プログラミング言語...
-
int16_t の _t は何?
-
DLLファイルの逆コンパイラにつ...
-
visual studio 2022でのC#プロ...
-
プログラミングc++を全く分か...
-
DNCL(共テ用プログラミング言語...
-
C言語 配列と関数の練習問題
-
gccを行ってもexeファイルが生...
-
C言語 列挙型(enum型)変数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA 作業後に選択範囲...
-
別のフォームで記述している関...
-
エクセル マクロ 別シートから...
-
VBAでのユーザフォームの表示有...
-
ascW関数の結果がおかしい
-
Excel VBA 選択範囲の罫線色の...
-
ACCESSで別DBにあるクエリを...
-
Sub Auto_Open() 実行されない
-
円の中に等間隔に線を引くには
-
ExcelVBAで毎月月初の最初にBoo...
-
エクセルのVBAにショートカット...
-
GetAsyncKeyState() を利用する...
-
最小化ボタンで最小化したフォ...
-
エクセルVBAのコードで質問です...
-
メニューバーのイベントが2回...
-
続き…エクセルvba ①SUBメニ...
-
Excel VBAのステップイン
-
Excelで、チェックボックスにチ...
-
MATLABの乱数生成関数 rand( ) ...
-
Visual Basic 6.0のフォームの...
おすすめ情報