Peyman.Gh
سه شنبه 31 فروردین 1389, 19:40 عصر
چند روز پیش آموزشی مبنی بر ساختن Button بصورت دینامیک قرار دادم :
http://barnamenevis.org/forum/showpost.php?p=956037&postcount=23
اما به این فکر افتادم که چگونه با کلیک بر روی یک Button ایستا یک Button دینامیک ایجاد شود و زیر برنامه کلیک آن Button کار کند !
روشی که در لینک بالا توضیح دادم جوابگو نیست زیرا وقتی روی Button ایستا کلیک میکنیم صفحه PostBack میشود و Button دینامیک ساخته میشود اما کد زیر برنامه اجرا نمیشود زیرا صفحه دوباره بارگزاری نشده و فقط PostBack شده است ولی اگر در Page_Load قرار دهیم قبل از اولین Button , PostBack دینامیک ما ساخته شده است و کار میکند.اگر غیر اینصورت میباشد دوستان تصحیح نمایند.:متفکر:
یک راه حل به ذهنم رسید گفتم برای دوستان قرار دهم شاید مفید باشد مخصوصاً برای این تاپیک :http://barnamenevis.org/forum/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");
}
}موفق باشید.
http://barnamenevis.org/forum/showpost.php?p=956037&postcount=23
اما به این فکر افتادم که چگونه با کلیک بر روی یک Button ایستا یک Button دینامیک ایجاد شود و زیر برنامه کلیک آن Button کار کند !
روشی که در لینک بالا توضیح دادم جوابگو نیست زیرا وقتی روی Button ایستا کلیک میکنیم صفحه PostBack میشود و Button دینامیک ساخته میشود اما کد زیر برنامه اجرا نمیشود زیرا صفحه دوباره بارگزاری نشده و فقط PostBack شده است ولی اگر در Page_Load قرار دهیم قبل از اولین Button , PostBack دینامیک ما ساخته شده است و کار میکند.اگر غیر اینصورت میباشد دوستان تصحیح نمایند.:متفکر:
یک راه حل به ذهنم رسید گفتم برای دوستان قرار دهم شاید مفید باشد مخصوصاً برای این تاپیک :http://barnamenevis.org/forum/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");
}
}موفق باشید.