PDA

View Full Version : سوال: طریقه انتقال آرایه از اعداد به فرم بعدی



f.beigirad
پنج شنبه 28 دی 1391, 19:52 عصر
با عرض سلام.

من آرایه ای(arry) رو در فرم 1 مقدار دهی میکنم.

حالا میخوام از مقادیر این آرایه در فرم بعدی استفاده کنم.
این کد ارور میده ببینید:
این کد برای فرم 1 هست:
new Form2(arry).ShowDialog(this);

و این هم فرم 2:

int[] idlist = new int[5];
public ResultForm(int[] arry1)
{
InitializeComponent();
idlist = arry1;
}

برای استفاده از این این تیکه کد رو نوشتم که کار نکرد:

string s = "";
int i=0;
while (i < 5)
{
s += idlist[i].ToString();

}
MessageBox.Show(s);

sinaprog
پنج شنبه 28 دی 1391, 20:13 عصر
باید تو فرم 2 بنویسی
Form1 f1;
public Form2(Form f){
f1=f}
تو فرم1
Form2 f2 = new Form2(this);
f2.ShowDialog();
باید array public باشه
تو فرم 2 هم هر وقت لازمش داشتی باید بنویسی
f1.array

f.beigirad
پنج شنبه 28 دی 1391, 20:20 عصر
ممنون از شما دوست عزیز.

من یکم کد رو تغییر دادم تا این جواب داد.

برای سایر دوستان میذارم.

فرم 1:
int[] arr = new int[5] {1,2,3,4,5};
new Form2(arr).Show(this);

و فرم 2:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form2 : Form
{
private int[] ar2;
public Form2(int[] ar1)
{
InitializeComponent();
ar2 = ar1;
}

private void Form2_Load(object sender, EventArgs e)
{
string s = "";
for (int i = 0; i < 5; i++)
{
s += ar2[i].ToString();
}
MessageBox.Show(s);

}
}
}