PDA

View Full Version : ایجاد آرایه ای از اشیا DataTable



jd.mn98
سه شنبه 26 اسفند 1393, 20:01 عصر
سلام دوستان
من تو برنامم 13 تا کامبو باکس دارم که به یه جدول توی sql وصل میشه.
چون 13 بار شی گرفتن از DataTable زیاد جالب نیست میخوام آرایه ای از اشیا که 13 تا خانه داره رو بسازم و این کارو به صورتی که در شکل هست انجام دادم. ولی نمیدونم چرا اطلاعات از بانک به کامبو باکس متصل نمیشه.
وقتی تک تک امتحان کردم درست می کرد ولی اینطوی که در شکل هست نوشتم کار نمیکنه
129546

fool66
سه شنبه 26 اسفند 1393, 20:40 عصر
منظورتو زیاد متوجه نشدم ولی می تونی یه شی خودت ایجاد کنی بعد از نوع آرایه ای استفاده کنی ازش


class cust
{
string name;
string family;
int age;


}


private void Form1_Load(object sender, EventArgs e)
{
cust[] re = new cust[20];
}


اگه این جوابت نیست یه کم توضیح بده

jd.mn98
چهارشنبه 27 اسفند 1393, 08:17 صبح
برای اینکه sql رو به کامبوباکس متصل کنم یعنی یه ستون از sql رو بیارم توی کامبوباکس باید از DataTable استفاده کنم.
حالا من 13 تا کامبوباکس دارم که همشون از یه ستون باید پر بشن
برای این کار من باید 13 بار از DataTable شی بگیرم که کار جالبی نیست.
یمخوام که به جای اینکه 13 بار شی بگیرم ، یه آرایه از اشیا DataTable تعریف کنم که 13 تا خانه داشته باشه.
ولی این کارو به طریقی که تو شکل میبینید انجام دادم که نمیدونم چرا کار نمیکنه یعنی اطلاعات ستون جدول رو توی کامبو باکس نمیاره.

SabaSabouhi
چهارشنبه 27 اسفند 1393, 08:45 صبح
برای اینکه sql رو به کامبوباکس متصل کنم یعنی یه ستون از sql رو بیارم توی کامبوباکس باید از DataTable استفاده کنم.
حالا من 13 تا کامبوباکس دارم که همشون از یه ستون باید پر بشن
برای این کار من باید 13 بار از DataTable شی بگیرم که کار جالبی نیست.
یمخوام که به جای اینکه 13 بار شی بگیرم ، یه آرایه از اشیا DataTable تعریف کنم که 13 تا خانه داشته باشه.
ولی این کارو به طریقی که تو شکل میبینید انجام دادم که نمیدونم چرا کار نمیکنه یعنی اطلاعات ستون جدول رو توی کامبو باکس نمیاره.

سلام
گمان می‌کنم زیاد حساس هستی، شما کار رو به صورت معمول و عادی انجام بده، اگه دیدی مشکل کندی داری، بعد برو سراغ راه حل
برای سریع کردن برنامه.
ضمن این که توصیه می‌کنم از EF استفاده کنی.

صبا صبوحی

jd.mn98
چهارشنبه 27 اسفند 1393, 21:41 عصر
این حل شد ولی یه سوال دیگه برام پیش اومده
من دو تا فرم دارم
توی فرم اول یه آرایه تعریف میکنم با سطح دسترسی public و میخوام از طریق فرم دوم اونو مقدار دهی کنم ولی نمیدونم چرا با روشی که میرم این کار نمیشه
روش اینطوره
تو فرم دو یه شی از فرم اول میگیرم بعد از طریق اون شی ، خانه اول آرایه رو مقدار میدم ، ولی وقتی میرم تو فرم اول که چک کنم آیا خانه اول مقدار دهی شده یا نه میبینم که مقدار دهی نشده و خالیه
اگه میشه راهنماییم کنین

SabaSabouhi
پنج شنبه 28 اسفند 1393, 08:46 صبح
این حل شد ولی یه سوال دیگه برام پیش اومده
من دو تا فرم دارم
توی فرم اول یه آرایه تعریف میکنم با سطح دسترسی public و میخوام از طریق فرم دوم اونو مقدار دهی کنم ولی نمیدونم چرا با روشی که میرم این کار نمیشه
روش اینطوره
تو فرم دو یه شی از فرم اول میگیرم بعد از طریق اون شی ، خانه اول آرایه رو مقدار میدم ، ولی وقتی میرم تو فرم اول که چک کنم آیا خانه اول مقدار دهی شده یا نه میبینم که مقدار دهی نشده و خالیه
اگه میشه راهنماییم کنین

سلام
طبیعی هست، چون وقتی می‌ری به فرم اول داخل یک شی دیگه هستی، نه اون که تو فرم دوم ساختی
دو تا راه حل داری، یکی این که اون آرایه رو static کنی، و دیگه این که تو فرم دوم به‌جای این که از فرم اول
یه شی بسازی همون شی ساخته شده رو یه جایی نگهداری کنی ( مثلاً تو program.cs ) و به همون ارجاع بدی.

صبا صبوحی