私は、ユーザーが編集するファイルを選択できるform1と、ユーザーがデータを編集できるform2という2つのフォームを持っています。ユーザーが編集するファイルを選択するにはForm1のListViewコントロールのためのコードの下:フォーム間のデータの受け渡しはnullです
private void Form2_Load(object sender, EventArgs e)
{
Form1 f1 = new Form1();
string[] accData = f1.AccountData;
string[] test1 = accData.ToString().Split(';');
oldUsername.Text = test1[0];
oldPass.Text = test1[1];
//and so on
}
プロパティ:
private void listView1_DoubleClick(object sender, EventArgs e)
{
_AccountData = File.ReadAllLines(listView1.SelectedItems[0].Tag.ToString());
Form2 passForm = new Form2();
passForm.ShowDialog();
}
ここでは、ユーザがデータを編集できるようにすべきでは二番目の形式、のためのコードがありますデータ渡す:
private string[] _AccountData;
public string[] AccountData
{
get { return _AccountData; }
set { _AccountData = value; }
}
する。これは私がフォーム間でデータを渡すために使用するものですが、私はデータを表示しようとするたびに、それがそのf1.AccountData is null
、電子を示しているので、それは常に、第二の形式でハング私はブレークポイントを置くとデータは最初の形式で表示されますが、2番目の形式には渡されません)。
私はいくつかのフォームで作業するのが比較的新しいので、コードを動作させるために何を編集する必要があるのかよく分かりません。最初のフォームに値が表示されたときに、値が2番目のフォームでnullであることが表示されるのはなぜですか?
Form2でコンストラクタまたはプロパティを作成し、_Acco untData値を入力し、フォームを表示します。 –
これは数百万回も前に尋ねられており、答えが正しいと(大きな驚き)。閉鎖に投票しました – EpicKip