- - PR -
構造体のデータ受け渡しについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2002-10-10 11:14
Windowsフォーム側で構造体を作成し、新規プロジェクトで作成したクラス(SetData)に
構造体のデータを渡したいのですが、わたすことができません。 public void SetData(??? EntryId) 型をどうすればいいのか、わからないのですが ご指導お願いします。 Window(Form) private void button2_Click(object sender, System.EventArgs e) { string ls_a; str_data lstr_now = new str_data("a","b"); ls_a = lstr_now.s_text1; class_test.Class1 class1 = new class_test.Class1(); class1.SetData(lstr_now); } public struct str_data { public string s_text1,s_text2; public str_data(string a,string b) { s_text1 = a; s_text2 = b; } } クラス(class1) public class Class1 { public void SetData(??? EntryId) { *********** //実行処理 ********** } } | ||||
|
投稿日時: 2002-10-10 11:20
構造体の型ではダメですか? #なにか私が勘違いしてる??? | ||||
|
投稿日時: 2002-10-10 12:16
こんにちは。
public void SetData(修飾.str_data EntryId) でだめなんですか? C#は守備範囲外なのですが、『新規プロジェクトで作成したクラス』ということなので、「str_data」を宣言したモジュールを、「Class1」側で参照できるようにしてください。そうすれば、「public void SetData(修飾.str_data EntryId)」でOKになると思います。 「修飾」には、構造体を宣言した側のネームスペースを入れてください。 ところで、これではプロジェクト同士を相互に参照しなければならないので、str_dataの宣言もClass1側に持っていけないか、検討されてはどうでしょうか。 [ メッセージ編集済み 編集者: Jitta 編集日時 2002-10-10 12:21 ] | ||||
|
投稿日時: 2002-10-10 13:05
返答ありがとうございます。
「プロジェクト同士を相互に参照」をしなければいけない とのことだったのですが。できればクラス側では、Window sフォーム側の参照をしたくなかったので、とりあえず public void SetData(object EntryId) にして、データ取得することにしました。 |
1