ساخت یک Button بصورت پویا (Dynamic) هنگام کلیک کردن بر روی یک Button ایستا(Static) !
چند روز پیش آموزشی مبنی بر ساختن Button بصورت دینامیک قرار دادم :
https://barnamenevis.org/showpo...7&postcount=23
اما به این فکر افتادم که چگونه با کلیک بر روی یک Button ایستا یک Button دینامیک ایجاد شود و زیر برنامه کلیک آن Button کار کند !
روشی که در لینک بالا توضیح دادم جوابگو نیست زیرا وقتی روی Button ایستا کلیک میکنیم صفحه PostBack میشود و Button دینامیک ساخته میشود اما کد زیر برنامه اجرا نمیشود زیرا صفحه دوباره بارگزاری نشده و فقط PostBack شده است ولی اگر در Page_Load قرار دهیم قبل از اولین Button , PostBack دینامیک ما ساخته شده است و کار میکند.اگر غیر اینصورت میباشد دوستان تصحیح نمایند.:متفکر:
یک راه حل به ذهنم رسید گفتم برای دوستان قرار دهم شاید مفید باشد مخصوصاً برای این تاپیک :https://barnamenevis.org/showthread.php?t=215427
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (Session["mode"] == "active")
{
form1.Controls.Add(btn());
Button1.Visible = false;
}
if (Session["remove_mode"] == "active")
{
form1.Controls.Remove(btn());
Button1.Visible = false;
}
}
public Button btn()
{
Button btn = new Button();
btn.Text = "TEST";
btn.Click += new EventHandler(btn_click);
return btn;
}
void btn_click(object sender, EventArgs e)
{
Response.Write("Test !!!");
Session.Add("remove_mode","active");
Session.Remove("mode");
Server.Transfer("default.aspx");
}
protected void Button1_Click(object sender, EventArgs e)
{
Session.Add("mode","active");
Server.Transfer("default.aspx");
}
}
موفق باشید.
نقل قول: ساخت یک Button بصورت پویا (Dynamic) هنگام کلیک کردن بر روی یک Button ایستا(Static) !
فرق خط هشتم کد شما با خط سیزدهم در چیه؟ در هر 2 حالت Button نمایش داده نشه؟
به نظر شما برادر این کار به سرور فشار وارد نمی کنه؟
استفاده از AJAX به صرفه تر نیست؟
و یه سوال دیگه مزیت این کار چیه؟ کجا تو وب کاربرد داره ؟
نقل قول: ساخت یک Button بصورت پویا (Dynamic) هنگام کلیک کردن بر روی یک Button ایستا(Static) !
نقل قول:
فرق خط هشتم کد شما با خط سیزدهم در چیه؟ در هر 2 حالت Button نمایش داده نشه؟
میخواهیم ابتدا بر روی Button ایستای خود کلیک کرده سپس Button ایستا پنهان شود (خط شماره 8) و Button دینامیک ساخته شود و وقتی بر روی Button دینامیک کلیک کرده زیر برنامه کلیک آن اجرا و Button دینامیک هم پنهان شود و چون دوباره لود میشود پس نیاز است که دوباره Button ایستا را پنهان کنیم (خط شماره 13).
نقل قول:
به نظر شما برادر این کار به سرور فشار وارد نمی کنه؟
%100 !!!
نقل قول:
استفاده از AJAX به صرفه تر نیست؟
کار نکردم !
نقل قول:
و یه سوال دیگه مزیت این کار چیه؟ کجا تو وب کاربرد داره ؟
به هر حال یک مثال از ساخت کنترل به صورت دینامیک میباشد و بسته به نیاز شما دارد.:لبخند::چشمک:
موفق باشید.