PDA

View Full Version : سوال: تغییر قطعه کد زیر به غیر استاتیک



reza69
سه شنبه 11 آبان 1395, 10:53 صبح
سلام
من میخوام قطعه کد زیر را که از متغیر های استاتیک استفاده می کند را به غیر استاتیک تغییر بدم ولی نمیدونم چطوری؟
این قطعه کد مقدار دو متغیر را از یک فایل .cs به webform انتقال می دهد.

قطعه کد فایل .CS

public static Literal lit_pub_adver_barcap = new Literal();
public static Literal lit_div_adver_start = new Literal();

public static void settingfunc()
{
}


قطعه کد فایل webform.aspx.cs

registering_class_file.settingfunc();
this.FindControl("PlaceHolder_pub_adver_barcap").Controls.Add(registering_class_file.lit_pub_adve r_barcap);
this.FindControl("PlaceHolder_div_adver_start").Controls.Add(registering_class_file.lit_div_adve r_start);

reza69
سه شنبه 11 آبان 1395, 13:17 عصر
حداقل بگید چطوری با یک تابع بازگشتی این کار رو انجام بدم؟
تابع بازگشتی که استاتیک نباشه. اصلا تابع بازگشتی غیر استاتیک داریم؟

Mahmoud.Afrad
سه شنبه 11 آبان 1395, 13:31 عصر
کلمه کلیدی static را حذف کنید. در اینصورت برای استفاده از کلاس registering_class_file و اجزای اون ، باید نمونه بسازید.


و البته به اینگونه متدها گرچه مقداری را return کنند، بازگشتی نمیگن . تعریف توابع بازگشتی متفاوت هست.

reza69
سه شنبه 11 آبان 1395, 13:39 عصر
کلمه کلیدی static را حذف کنید. در اینصورت برای استفاده از کلاس registering_class_file و اجزای اون ، باید نمونه بسازید.
و البته به اینگونه متدها گرچه مقداری را return کنند، بازگشتی نمیگن . تعریف توابع بازگشتی متفاوت هست.

خیلی ممنون از پاسخ
ولی registering_class_file اسم فایله که settingfunc(); توش تعریف شده
حالا چطوری تعریف کنم؟ کداش چطوری میشه؟

Mahmoud.Afrad
سه شنبه 11 آبان 1395, 13:53 عصر
https://msdn.microsoft.com/en-us/library/x9afc042.aspx
http://www.sourcecodes.ir/post.php?id=200

حتما مبحث شئ گرایی را مطالعه کنید.

reza69
سه شنبه 11 آبان 1395, 14:05 عصر
https://msdn.microsoft.com/en-us/library/x9afc042.aspx
http://www.sourcecodes.ir/post.php?id=200

حتما مبحث شئ گرایی را مطالعه کنید.
چیزی متوجه نشدم اگه میشه جواب سوال اولین پست رو بدید

reza69
جمعه 14 آبان 1395, 12:42 عصر
جواب رو پیدا کردم

public KeyValuePair<Literal, Int32> nazarat_load(Literal literal_mygrid_nazarat, Int32 meghdare_dropdlist_nazarat)
{


return new KeyValuePair<Literal, Int32>(literal_mygrid_nazarat, meghdare_dropdlist_nazarat);
}



برای صدا زدن

registering_class_file ss = new registering_class_file();
KeyValuePair<Literal, Literal> newValue = ss.settingfunc1(lit_pub_adver_barcap1, lit_div_adver_start1);
this.FindControl("PlaceHolder_pub_adver_barcap").Controls.Add(lit_pub_adver_barcap1);//lit_pub_adver_barcap1 lit_div_adver_start1
this.FindControl("PlaceHolder_div_adver_start").Controls.Add(lit_div_adver_start1);