explod_javad
دوشنبه 27 آبان 1387, 10:27 صبح
با سلام
من توي ميخام بصورت دايناميك يك يوزر كنترل به صفحه اضافه كنم.
البته دوست عزيزم asp.net.csharp.ir اين روش رو بطور مختصر توضيح داده
http://barnamenevis.org/forum/showthread.php?t=127392
اما هر بار كه صفحه postback ميشه كنترل اضافه شده ناپديد ميشه.
هر جايي كه فكر مي كردم مهم هست خاصيت enableviewstate="True" رو قرار دادم ولي ...؟
كدشم اينه
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
tdCtrl.Controls.Clear()
Dim ctrl As UserControl = New UserControl()
Dim pageName As String = Request.QueryString("pageName").ToString()
ctrl = CType(LoadControl(pageName + ".ascx"), UserControl)
tdCtrl.Controls.Add(ctrl)
End If
end sub
Protected Sub btnPg1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnPg1.Click
Response.Redirect("Default.aspx?pageName=~/Wuc/Product")
End Sub
Protected Sub btnPg2_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnPg2.Click
'Response.Redirect("Default.aspx?pageName=~/ProductType")
Response.Redirect("Default.aspx?pageName=~WebUserControl1")
End Sub
و html
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WebForm1.aspx.vb" Inherits="Zereh_Wap.WebForm1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="btnPg1" runat="server" Text="Page1" onclick="btnPg1_Click" />
<br />
<br />
<asp:Button ID="btnPg2" runat="server" Text="Page2" onclick="btnPg2_Click" />
</div>
<table class="style1" style="background-color: #F0FFF0" >
<tr>
<td runat="server" id="tdCtrl">
</td>
</tr>
</form>
</body>
</html>
من توي ميخام بصورت دايناميك يك يوزر كنترل به صفحه اضافه كنم.
البته دوست عزيزم asp.net.csharp.ir اين روش رو بطور مختصر توضيح داده
http://barnamenevis.org/forum/showthread.php?t=127392
اما هر بار كه صفحه postback ميشه كنترل اضافه شده ناپديد ميشه.
هر جايي كه فكر مي كردم مهم هست خاصيت enableviewstate="True" رو قرار دادم ولي ...؟
كدشم اينه
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
tdCtrl.Controls.Clear()
Dim ctrl As UserControl = New UserControl()
Dim pageName As String = Request.QueryString("pageName").ToString()
ctrl = CType(LoadControl(pageName + ".ascx"), UserControl)
tdCtrl.Controls.Add(ctrl)
End If
end sub
Protected Sub btnPg1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnPg1.Click
Response.Redirect("Default.aspx?pageName=~/Wuc/Product")
End Sub
Protected Sub btnPg2_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnPg2.Click
'Response.Redirect("Default.aspx?pageName=~/ProductType")
Response.Redirect("Default.aspx?pageName=~WebUserControl1")
End Sub
و html
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WebForm1.aspx.vb" Inherits="Zereh_Wap.WebForm1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="btnPg1" runat="server" Text="Page1" onclick="btnPg1_Click" />
<br />
<br />
<asp:Button ID="btnPg2" runat="server" Text="Page2" onclick="btnPg2_Click" />
</div>
<table class="style1" style="background-color: #F0FFF0" >
<tr>
<td runat="server" id="tdCtrl">
</td>
</tr>
</form>
</body>
</html>