I need to create aspx pages on the fly or at the runtime.I read that creating a template page and posting content to the page would be a solution, in a few posts in the forum. Can i get information on this method.
I have a requirement whereby one or more image buttons need to be created in a user control at runtime. The number of buttons is determined from a database where a user can add one or more rows that contain an image for each button, so if a user adds 3 images to a table, 3 image buttons are created. Ive used this code but I get an error at runtime
The control collection cannot be modified during DataBind, Init, Load, PreRender or Unload phases.
[Code]....
this is the usercontrol aspx
[Code]....
I basically want one or more buttons to render within the div in the usercontrol. Ive only got the code written for one button at the moment while I test the rendering, eventually they will be rendered in a loop of records taken from a database. Whats the best way to do this ?
i am creating some of the control at runtime according database values. problem is that when i click onto the button, if the text box is empty, the required field validator(genrated at runtime) show first time that the text box is empty. but one agin i click on to the button, it doest show any error messege and all of the control which i am genrating at run time are hiding when i see at the page source, no control is find there.
using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; using AjaxControlToolkit; using click2install.controls; public partial class FeebackForm_Client : System.Web.UI.Page { HtmlGenericControl table = new HtmlGenericControl("table"); DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { CreateForm(); } } public void CreateForm() { ds = DBManager.ExecuteDataset("[FeedBack_FeedbackDetail_get]"); for (int i = 1; i < ds.Tables[0].Columns.Count - 1; i = i + 4) { //CreateControl(txtAddress.Text.ToString(), txtAddressRun, false, false, txtAddressToolTip.Text, txtAddressWaterMark.Text); string Name = ds.Tables[0].Rows[0][i].ToString().Replace(" ",""); if (Name != "") { TextBox txtControl = new TextBox(); //RequiredTextBox txtControl = new RequiredTextBox(); txtControl.ID = "txt" + Name; txtControl.CausesValidation = true; bool RequiredField; bool ToolTip; if (ds.Tables[0].Rows[0][i + 3].ToString() == "True") { RequiredField = true; } else RequiredField = false; if (ds.Tables[0].Rows[0][i + 1].ToString() != "") { ToolTip = true; } else ToolTip = false; string TooltipText = ds.Tables[0].Rows[0][i + 1].ToString(); string WaterMarkText = ds.Tables[0].Rows[0][i + 2].ToString(); CreateControl(Name, txtControl, RequiredField, ToolTip, TooltipText, WaterMarkText); } } HtmlGenericControl tr = new HtmlGenericControl("tr"); HtmlGenericControl td1 = new HtmlGenericControl("td"); HtmlGenericControl td2 = new HtmlGenericControl("td"); HtmlGenericControl td3 = new HtmlGenericControl("td"); HtmlGenericControl td4 = new HtmlGenericControl("td"); Button btnInsertRun = new Button(); btnInsertRun.Text = btnSubmit.Text.ToString(); btnInsertRun.ValidationGroup = "Check"; td2.Controls.Add(btnInsertRun); tr.Controls.Add(td1); tr.Controls.Add(td2); tr.Controls.Add(td3); tr.Controls.Add(td4); table.Controls.Add(tr); pnlPreview.Controls.Add(table); System.Threading.Thread.Sleep(500); ScriptManager.RegisterStartupScript(this, GetType(), Guid.NewGuid().ToString(), "Hide();", true); System.Threading.Thread.Sleep(500); ScriptManager.RegisterStartupScript(this, GetType(), Guid.NewGuid().ToString(), "ShowAddDisability()", true); } public void btnInsertRun_Click(object sender, System.EventArgs e) { CreateForm(); //ds = DBManager.ExecuteDataset("[FeedBack_FeedbackDetail_get]"); //TextBox txt1,txt2,txt3,txt4,txt5=new TextBox(); //objBox2 = this.Page.FindControl("objBox2") as TextBox; string ss = "txt" + ds.Tables[0].Rows[0][1].ToString(); //TextBox objTextBox = (TextBox)PnlControlPanel1.FindControl(strControlName); TextBox txt1 = new TextBox(); txt1 = (TextBox)this.Page.FindControl("txt" + ds.Tables[0].Rows[0][1].ToString()); //txt1=this.pnlContainer.FindControl("txt"+ds.Tables[0].Rows[0][1].ToString()) as TextBox; // txt2 = this.pnlContainer.FindControl("txt" + ds.Tables[0].Rows[0][5].ToString()) as TextBox; // txt3 = this.pnlContainer.FindControl("txt" + ds.Tables[0].Rows[0][9].ToString()) as TextBox; // txt4 = this.pnlContainer.FindControl("txt" + ds.Tables[0].Rows[0][13].ToString()) as TextBox; // txt5 = this.pnlContainer.FindControl("txt" + ds.Tables[0].Rows[0][17].ToString()) as TextBox; string fh = txt1.Text; //DBManager.ExecuteNonQuery("Feedback_FeedbackInsert", ds.Tables[0].Rows[0][1].ToString(), txt1.Text,ds.Tables[0].Rows[0][5].ToString(), txt2.Text,ds.Tables[0].Rows[0][9].ToString(), txt3.Text,ds.Tables[0].Rows[0][13].ToString(), txt4.Text,ds.Tables[0].Rows[0][17].ToString(), txt5.Text); Response.Write("Ho Gya"); } public void CreateControl(string Name, TextBox ControlID, bool RequiredField, bool Tooltip, string TooltipText, string WaterMarkText) { if (WaterMarkText == "") WaterMarkText = Name; HtmlGenericControl tr = new HtmlGenericControl("tr"); HtmlGenericControl td1 = new HtmlGenericControl("td"); HtmlGenericControl td2 = new HtmlGenericControl("td"); HtmlGenericControl td3 = new HtmlGenericControl("td"); HtmlGenericControl td4 = new HtmlGenericControl("td"); td1.InnerText = Name; ControlID.ValidationGroup = "Check"; //ControlID.ValidatorMessage = Name + " is Required Field"; //ControlID.ValidatorDisplayType = ValidatorDisplay.Dynamic; //ControlID.ValidatorEnableClientScript = true; td2.Controls.Add(ControlID); if (RequiredField == true) { //RequiredFieldValidator Valid = new RequiredFieldValidator(); //Valid.ID = "Valid" + Name; //Valid.ControlToValidate = ControlID.ID.ToString(); //Valid.ErrorMessage = Name + " is Required Field"; //Valid.Text = "*"; //Valid.Display = ValidatorDisplay.Dynamic; //Valid.EnableViewState = true; //Valid.SetFocusOnError = true; //Valid.Enabled = true; //Valid.EnableClientScript = true; //Valid.InitialValue = WaterMarkText; //Valid.ValidationGroup = "Check"; //td3.Controls.Add(Valid); } if (Tooltip == true) { HtmlGenericControl span = new HtmlGenericControl("span"); //span.Attributes.Add("class", "hotspot"); span.Attributes.Add("onmouseout", "tooltip.hide();"); span.Attributes.Add("onmouseover", "tooltip.show('" + TooltipText + "');"); HtmlImage img = new HtmlImage(); img.Src = "info.png"; span.Controls.Add(img); td4.Controls.Add(span); } //TextBoxWatermarkExtender WaterMark = new TextBoxWatermarkExtender(); //WaterMark.WatermarkText = WaterMarkText; //WaterMark.EnableClientState = true; //WaterMark.TargetControlID = ControlID.ID.ToString(); //WaterMark.Enabled = true; //WaterMark.ID = "WaterMark" + Name; //td1.Controls.Add(WaterMark); tr.Controls.Add(td1); tr.Controls.Add(td2); tr.Controls.Add(td3); tr.Controls.Add(td4); table.Controls.Add(tr); } } after rendring the page... <div id="pnlContainer"> <table><tbody><tr><td>Email</td><td><input type="text" id="txtEmail" name="txtEmail"></td><td></td><td><span onmouseover="tooltip.show('Email');" onmouseout="tooltip.hide();"><img src="info.png"></span></td></tr><tr><td>FirstName</td><td><input type="text" id="txtFirstName" name="txtFirstName"></td><td></td><td><span onmouseover="tooltip.show('First Name');" onmouseout="tooltip.hide();"><img src="info.png"></span></td></tr><tr><td>LastName</td><td><input type="text" id="txtLastName" name="txtLastName"></td><td></td><td><span onmouseover="tooltip.show('Last Name');" onmouseout="tooltip.hide();"><img src="info.png"></span></td></tr><tr><td>City</td><td><input type="text" id="txtCity" name="txtCity"></td><td></td><td><span onmouseover="tooltip.show('City');" onmouseout="tooltip.hide();"><img src="info.png"></span></td></tr><tr><td>Address</td><td><input type="text" id="txtAddress" name="txtAddress"></td><td></td><td><span onmouseover="tooltip.show('Address');" onmouseout="tooltip.hide();"><img src="info.png"></span></td></tr></tbody></table></div>
but after the click on to the button it shows only the container div..
Create one page called Main.aspx. This page has a DIV and a buttons.
The browser loads Main.aspx. Then when I click the button, I want to load page Page99.aspx into the DIV in Main.aspx dynamically, but without Main.aspx requiring a postback.
So, Main.aspx loads once, and thereafter all the content displayed in Main.aspx will come from different .aspx pages.
Ps. I'm looking for a solution as above, but not using frames.
UPDATE 1
I should mention that Page99 is not a simple HTML page. It will contain Web controls.
I'm having problems binding controls at runtime. I've some user controls which need to be bind to the page when one of the dropdownlist selected index changed.
I can able to bind them properly but when if there is any postback event happens I am losing the controls and control values which were created runtime.
way to generate aspx page during runtime and data-driven content from database, just like a threat in asp.net forum, where the url is something like, [URL]
I wrote a test page that does a bunch of busy work in a method called at page load. This process as I have it now takes around 12 seconds.
If I try to load another page while the first long running page is loading, this second page doing nothing except writing out a world, it doesn't load until the first long running page is finished.
Why is this the case? I would think IIS would be able to handle multiple concurrent connections, it seems crazy that one long running page would stop every other page in the application from loading. I must be missing something or not understand how IIS works.
I would think multiple independent requests would be spawned on different threads. Is this only the case if the requests are from different sessions entirely? Are all requests from a single session bound to a single thread?
1. On OnCreatedUser event, I create a folder for each members, so that they can store their files inside those. The thing is I use User.Provider key as a folder name. Is this a good way to store? Is this OK from security view point. Otherwise I am planning to use the User.Username. Here are the codes inside the OnCreatedUser event.
[Code]....
2. Inside these user folders I want to put web.config at run time [at the time of registration]. So that a member cannot access files of other members at any cost. Do you have any idea on creating web.config file at runtime inside these folders? Else if you can provide me any other options, I am eager to listen that. I don't want to call database frequently. So if there is any easy solution.
I am working on an asp.net page and I want to load the contents of another web page and place it in a panel. This is the kind of thing that you can do with curl, but I need a native c# solution.
I have a DataTable where the columns are generated programmatically at runtime. I then bind this DataTable to a GridView. What I'm wondering is how I can create the GridView to accommodate this, and if it's not possible, how I can output the DataTable into nicely formatted HTML.
Newbie in using AJAX . Programming in C# and using SQL as a database. Here is my scenario. User selects a project and I want to display the subprojects related to that project. Here is the query I use to retrieve subprojects.
"SELECT SubProjectName,StartDate,Description FROM SubProject WHERE ProjectName'"+ddlProjectName.text+"';
Currently I store the results of the query in a Dataset. I want to get the SubProjectName in the Header of the Accordion and StartDate and Description values to the text box for each accordion. ( This is what I need to do in each accordian for each subproject)
I have a Masterpage that has Treeview. You can select some nodes there. Based on the selection you get some items in the Default.aspx's Placeholder, you get a image and a linkbutton placed in a Panel. Like this :
This code is in the Default.aspx that has the Masterpage.
[Code]....
There seems to be problem when i create the controllers at runtime, when the site does a postback, lets say if i click "Enska" in the treeview i get the results in the image above. Lets say that i then click "The Punk Panther" i get a error.
An error has occurred because a control with id 'ctl00$CPH_Main$ctl05' could not be located or a different control is assigned to the same ID after postback. If the ID is not assigned, explicitly set the ID property of controls that raise postback events to avoid this error.
Also, how would i go by making a event handler for the linkbutton at runtime, can i make one event handler that every linkbutton uses or what ? I want the folder and the linkbutton to be clickable and link to the same place, is it simpler to make the whole Panel clickable, if so, how would i get a "OnClick" event on it ?
Sometimes MS provides error message so silly that its hard to understnad and you feel like throwing away all things.
My Web.Config does not contain any entries of MemberShip, Role or Profile.
I want to create a membership provider dynamically through code at runtime. I wrote following code and it receives following error message. I don;t know how come machine.config error appears in my application. how annoying.
Parser Error Message: The connection name 'LocalSqlServer' was not found in the applications configuration or the connection string is empty.
I'm working on master pages. And I would like to create tabs much like firefox tabs sharing sessions which need to navigate on different pages.I tried many solution but all comes into vain.
I'm currently making a site that is supposed to generate search results from a separate assembly, with a gridview that has links to each robot. The links from the gridview are supposed to link to a unique robot details page, as well as display another gridview to all related robots from the set, like this:
how to display unique detail pages. So far, I only have a details page template, but I'm trying to figure out how I can display the data dynamically, depending on which robot was selected from the main search.
Here are my Default.aspx and Details.aspx mark-ups so far:
I have a gridview that displays some records....i have added a new column to it called Edit....now when i click the edit link it should take me to a new page where i can edit that particular record only.....how do i go about it? I am using forms and no inbuilt ASP.NET controls except gridview....so i need to write queries for the same.....plz post code if possible
I want to find the distance between the two points on a map. like.. the user clicks on one point and then on other location.., it should draw a line and should calculate the distance between the two points showing in a lable text..
I want to display a aspx page dynamically by reading the function from class1.cs file.
In need to implement the code in .cs file i.e in Bussiness logic layer.In a class file i need create the instance for each webcontrol but i struck up at a point that where the instance of the webcontrol to be added and also how to use the function of BLL in aspx.cs file.
Am crating instance like this,
Textbox txt=new Textbox(); panel.add(txt);
But i want to implement thesame in BLL instead of adding object to panel in aspx.cs i want to call it from BLL.Appreciate your response.
Is it possible to create a popup window using an Aspx page and Java Script? I thought I saw this done once, but I don't recall how it was done. Here is really what I want to accomplish
So here is the pseudo code of what I would like to do.
1. Have an Aspx web page named default.aspx with a button on the web page named "Press Me"
2. Have an Aspx web page named popup.aspx that is 1/4 the size of the web page in step 1 and has a texbox control named txtPersonsName. And a submit button.
3. When the button on default.aspx is pressed, the web form in step 2 popup.aspx is displayed giving the impression of a popup window. A person enters their name on popup.aspx and then presses the submit button. The popup closes and the code behind of default.aspx captures the name entered in popup.aspx
Thougths: I think popup.aspx can be displayed using Java Script from the code behind of default.aspx. Or from within default.aspx.