PDA

View Full Version : کار با cerate instane



aliasghar2
سه شنبه 03 آبان 1390, 20:42 عصر
سلام
برنامه زیر رو در نظر بگیرید

namespace WindowsFormsApplication1
{
public class MyCls
{

public struct myStr
{
public int num1;
public int num2;
}

public int Sum(int c, string myName)
{
if (myName == "ALI")
return c + c;
else
return c * c;
}
public int div(myStr myStruct )
{
return myStruct.num1 / myStruct.num2;
}
}
public partial class Form1 : Form
{
public Form1()
{
string FullClassName = "WindowsFormsApplication1.MyCls";
string FunctionName = "Sum";
object[] FunctionParameteres = new object[]{3, "Mehrdad"};
object FunctionResult;
object obj;
Type t = Type.GetType(FullClassName);
obj = Activator.CreateInstance(t);
FunctionResult = t.GetMethod(FunctionName).Invoke(obj, FunctionParameteres).ToString();
MessageBox.Show(FunctionResult.ToString());

}
}
}

من با create instance یه شی از کلاسم ساختم و بع با invok متدم رو اجرا کردم

حالا می خوام با استفاده از این روش از struct توی کلاسم یه شی بسازم و اونو به این روش در متد div کلاسم استفاده کنم ولی نمی تونم از struct به این روش شی درست کنم

haniyehghassami
سه شنبه 03 آبان 1390, 20:50 عصر
سلام
میشه کلا این ها را توضیح بدین چی هستن؟


من با create instance یه شی از کلاسم ساختم و بع با invok متدم رو اجرا کردم

aliasghar2
سه شنبه 03 آبان 1390, 21:09 عصر
create instance یه object از کلاسم میسازه بعد در خط بعدی با getmethod نام متدم رو میدم بعد متد invoke رو فراخونی می کنم که اولین ارگومانش یه object از کلاسمه دومیش ارایه ای از object هاست که
شامل ارگوان های متدمه
مثلا

t.GetMethod(FunctionName).Invoke(obj, FunctionParameteres).ToString()

میاد تابع sum رو در کلاسم فراخوانی میکنه وبهش دوتا مقدار میده

aliasghar2
چهارشنبه 04 آبان 1390, 22:08 عصر
سلام
بلاخره تونستم که به struct دسترسی پیدا کنم
باید این متنو به create instance می دادم
WindowsFormsApplication1.MyCls+mystruct
بعد میتونیم با تابع getfields به فیلدهاش دسترسی پیدا کنیم و با getvalue مقدارش رو بگیری

میدونم که میشه با setvalue میشه بهش مقدار بدی ولی نتونستم باهاش کار کنم
اگه کسی می تونه کمک کنه کم لطفی نکنه
دوستانی که هم تا حالا کار نکردند پیشنهاد میکنم که برن دنبالش کنن چیز جالبیه

haniyehghassami
جمعه 06 آبان 1390, 17:45 عصر
سلام
میشه این ها رو کامل توضیح بدین؟
اینا سی شارپن؟
کارشون چیه؟
اسم ویرایشگرشون چیه؟
من تا حالا از اینا ندیدم
نمیدونم چین:ناراحت::اشتباه::متفکر::گ یه: