あなたの習慣について教えてください!!

Form間の一データの受け渡しがうまくいったので、複数の値を返すために構造体を使って次のようにプログラムを作りましたがエラー表示(赤い波線)が出ます。どこがおかしいのでしょうか?
(参考にしたのは次のサイトです)
また、
http://sairoutine.hatenablog.com/entry/2014/02/1 …

//----------------------------------------

//Form1
namespace SendVariable_Test
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void submitButton_Click(object sender, EventArgs e)
{
//Form2に送るテキスト
string sendText = SendtextBox.Text;

//Form2から送られてきたテキストを受け取る。
Form2.St_Btn_data receiveText = Form2.ShowMiniForm(sendText); //Form2を開く

//Form2から受け取ったテキストをForm1で表示する。
ReceivetextBox.Text = receiveText.string1;// ここでエラー
//string1のところに「...アクセスできない保護レベルになっています」と表示されます。

}
}
}

//-----------------------------------------------
//Form2
namespace SendVariable_Test
{
public partial class Form2 : Form
{
private string[] argumentValues; //Form1から受け取った引数
public St_Btn_data ReturnValue; //Form1に返す戻り値

public struct St_Btn_data
{
string string1;
string string2;
}

public Form2(params string[] argumentValues)
{
//Form1から受け取ったデータをForm2インスタンスのメンバに格納
this.argumentValues = argumentValues;

InitializeComponent();
}

private void Form2_Load(object sender, EventArgs e)
{
//Form1から送られてきたテキストをForm2で表示
this.F2ReceivetextBox.Text = argumentValues[0];

}

static public St_Btn_data ShowMiniForm(string s)
{

Form2 f = new Form2(s);
f.ShowDialog();
St_Btn_data receiveText = f.ReturnValue;
f.Dispose();

return receiveText;

}

private void Closebutton_Click(object sender, EventArgs e)
{
//戻り値をセット
this.ReturnValue = { string1 = F2SendtextBox1.Text, string2 = F2SendtextBox2.Text};// ここでエラー

this.Close();
}

}
}

A 回答 (1件)

public struct St_Btn_data


{
public string string1;
public string string2;
}

// ...

this.ReturnValue.string1 = F2SendtextBox1.Text;
this.ReturnValue.string2 = F2SendtextBox2.Text;
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
うまくいきました。

お礼日時:2015/08/28 08:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報