Dynamic Form Creation In Asp.net C#?
Aug 12, 2011
I need some input refactoring an asp.net (c#) application that is basically a framework for creating dynamic forms (any forms). From a high level point of view, there is a table that has the forms, and then there is a table that has all the form fields, where it is one to many between the two. There is a validation table, where each field can have multiple types of validation, and it is a one to many from the form fields table to the validation table.
So the issue is that this application has been sold as the be-all-end-all customizable solution to all the clients. So, the idea is whatever form they want, we can build it jsut using DB configurations. The thing is, that is not always possible, because there is complex relationship between the fields, and complex relationship between the forms themselves. Also, there is only once codebase, and this is for multiple clients - all of whom host it on their own. There is very specific logic for each of the clients, and they are ALL in the same codebase, with no real separation. Sometimes it was too difficult to make it generic, so there are instances where it has hard coded logic (as in if formID = XXX then do _). You can also have nested forms, as in, one set of fields on its own within each form.
So usually, when one client requests a change, we make the change and deploy it to that client - but then another client requests a different change, and we make the change and deploy it for THAT client, but the change from the earlier client breaks it, and its a headache trying to debug, because EVERYTHING is dynamic. There is no way we can rollback the earlier change, because then the other client would be screwed.
Its not done in a real 3-tier architecture - its a web site with references to a DB class, and a class library. There is business logic in the web site itself, in the class library, and the database stored procs (Validation is done in the stored procs).
I think this is a bad model in general, because one of the things I heard one of the developers say is that anytime any client makes a change, we should deploy to everybody - but that is not realistic, if we have say 20 clients - there will need to be regression testing on EVERYTHING, since we don't know the impact...There are about 100 forms in total, and their is some similarity in them (not much). But I think the idea that a dynamic engine can solve ALL form requests was not realistic as well. Clients come up with the most weird requests. For example, they have this engine doing a regular data entry form AND a search form.
There is a lot of preserving state between pages, and it is all done using session variables, which is ok, except that it is not really tracked, and so sessions from the same user keep getting overwritten, and I think sessions should be got rid of.Should I really just rewrite the whole thing? This app is about 3 years old, and there has been lots of testing and things done, and serious business logic implemented, so I hate to get rid of all that (joel's advice). But its really a mess of a sphagetti code, and everything takes forever to do, and things break all the time because of minor changes.
I've been reading Martin Fowlers "Refactoring" and Michael Feathers "working effectively with legacy code" - and they are good, but I feel they were written for an application that was 'slightly' better architected, where it is still a 3-tiered architecture, and there is 'some' resemblance of logic..
View 4 Replies
ADVERTISEMENT
Nov 20, 2009
I'm trying to build a form which generates itself as it is used. I have created a really simplistic example, loosely related to what I'm trying to do below, but which demonstrates the problem.The user types a word in the text box, clicks the Button and a new TextBox is loaded into a Panel, with the value in the original TextBox that the user has entered. The user should then be able to type something else/the same and create another text box with that in it by clicking the button, basically permitting 0,1,..,n textboxes appearing above the "txtFeeder" TextBox on the form.The problem is that everytime you click the button, it doesn't add a new control, it seems to just update the one that has already been created with the new (incremental) ID. I'm not sure if I'm doing something wrong, or if what I'm trying to do can't be done (which I find hard to believe)?Here's the .aspx...
<form id="frmMain" runat="server">
<asp:Panel ID="pnlAdded" runat="server"></asp:Panel>
<asp:TextBox ID="txtFeeder" runat="server"></asp:TextBox>[code].....
View 2 Replies
Mar 7, 2011
I have a form that requires 5 columns of textboxes that the user will populate. By design I will provide the first row but, the user will need the ability to add or delete subsequent rows. Is there an easy way to approach this requirement?
View 19 Replies
Feb 15, 2012
I have a reguirement to enable the creation of excel workbooks from sql stored procedure. To do this I want to create a vb class to generate and save the excel files. Then and ASP.net page will enable opening the excel file via the browser or enable the user to download the file.The class should be able to be called from a vareity of pages within the web app and have the ability to handle 8 to 10 separate stored procedures that will return various data sets.
View 2 Replies
Dec 16, 2010
How can i add columns to rdlc report at runtime in windows based application using vb.net
View 1 Replies
Jul 9, 2009
I am trying to get the hang of Dynamic loading of objects from assemblies on the same machine (But NOT part of the same project).In the sample below, Form1 implements an interface built as part of the .dll I placed in C:Release. I am trying to create a local instance of Form1, and Cast it as Iform, so that the local code can access the properties and methods exposed by the interface.The assumption here is that at runtime, local code will have access to the String name of a form, and an interface which is implemented by the form (and is compiled into the .dll as well as the client application), and that is it.
When I run this code, I get a exception: "Unable to cast object of type 'WindowsApplication1.Form1' to type 'WindowsApplication1.Iform'.
Public Function fApplicationObject() As Iform
Dim sLocation As String = "C:ReleaseWindowsApplication1.dll"
Dim sType As String = "WindowsApplication1.Form1"
[code]....
I seem unable to dynamically load an object from a dll and then utilize an interface to access it's properties and such.
View 9 Replies
Jan 22, 2012
I am trying to make a program that will include a drag/drop view where you can arrange objects around in a view and add/delete objects as needed (objects are actually controls I create dynamically), I have made some code which I include below.If I run this code it works but not the part when I click on a newly created control, then mousemove function is not used, I should be able to move controls using the mouse functions..but these do not work. I thought code like:
AddHandler logicif(i).MouseMove, AddressOf logicif_MouseMove
should work! Can anyone give me pointers on what I am missing?
Public Class Form1
Dim logicif(20) As Panel
Dim count = 0
[code]....
View 2 Replies
Oct 27, 2010
Every time i enter set of values like Group Name,Group Abbreviation,URL in the text boxes and click the save button automatically its saves in the database and for each set of values a new details view has to be generated dynamically with a web panel and the header of the web panel should have the value of Group Name.
Example:
[Code].....
A new details view with web panel like the above has to be generated every time the save button is clicked.
View 1 Replies
Oct 19, 2010
Can i create a table with the input taken from user at runtime from vb.net.?
From vb.net in sqlserver 2008
View 1 Replies
Apr 7, 2011
I'm currently working on a program where I'm trying to dynamically create a picture box, a button, and a label for each item in a text file. Any ideas on how to do this? What I have: a plain text file with a list of numbers. Each number corresponds to a location. When that file is read, I want to create a picture box, a button, and a label related to each number. If I want to add something to the screen, all I Have to do is add a number to the file. So, lets say the file has. 1, 2
When the file loads, it will create a unique item on the display for each location. say pic1, button1, and label1 and pic2, button2, and label2. Right now, if I add something to the file, I have to go back into the editor and manually add everything. Which is a pain.
View 1 Replies
Jul 12, 2009
I have started a new blank project for VB 2007. I have taken the old code (VB 2003) and added it to the project.The line marked below worked on the old VB, now it does not. I get the following error:
Object reference not set to an instance of an object.
Troubleshooting tips:
Use the "new" keyword to create an object instance.
Check to determine if the object is null before calling the method.I have tried several forms of using the "New" keyword and still get the error.
Public Sub BuildChooseFileMenuItems()
Dim k As Integer
Dim numChecked As Integer
[code].....
View 1 Replies
Apr 20, 2012
i need to create sql tables based on user needs lets say a guy needs a table of 4 rows 5 columns other user needs 3 rows 3 columns each with different types so how is the best way for letting them choose like they write in a text box ( this will be the value of rows)4 and another text bvox the count of columns and i have those 2( rows and columns needed) numbers i create the table as is.based on those. by default i create type as varchar max then later on we must fill the table using datagrid.
View 14 Replies
Feb 19, 2010
Ive managed to dynamically create a form, and dynamically create a timer, but i have not been able to create the timer on the dynamic form. Specifically, i need to be able to have the timer itself create another form with a timer. (I realize that this would create a new form every interval on the timer, that is what i want to do)
1. A way to add the timer to the dynamic form, and maintain the timer sub on my main form.
2. A way to create the whole thing over (dynamic form and timer) through the previous dynamic form and timer.
I was thinking i could use a collection/array to store the forms and timers, but i'm still having trouble figuring out how to add entire forms or timers into a list. (A timer is not considered a control, so i cant use a controlcollection...)
Heres my code;
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim frm As New Form
[Code]....
*EDIT* Btw, my idea was to use i as a variable that increases every time a form is created, then insert the form into the array, with i as the integer. i just need to know how to create a new form with a different name each time. (as with timers)
View 1 Replies
Jul 25, 2009
ok so heres what im trying to do. I have one form with a textbox and a button. im trying to make it so that when you type in the word "internet" a new form will be created and it will have the following components inserted onto it;
one webbrowser
one textbox
eight buttons
im not really having a problem making a new form so much as having a problem putting the tools on it, heres what i have
Dim screensaver As New Form
Dim back As New Button
Dim forward As New Button
[Code].....
vb doesnt say i have an error or anything like that, but i cant create "internet". i can create the form but cant put any of the components on it.
View 2 Replies
Oct 15, 2009
I have a form that i need to be 100% Dynamic. So it could contain 10 labels maybe 100 who knows.
When you hover over a label there will be a different contextmenustrip to appear for each and every label. So all the contextmenustrips are Dynamic and contain 1 option maybe 2 options even 3 or 4 up to the users settings.
My problem is not creating a handler for when the user clicks on the contextmenustrips options. The problem is knowing which one of the options for that contextmenu was clicked!!
View 1 Replies
Nov 20, 2011
I have an assignment I need to make and I have to make an app where the user can create a map/floorplan.So basically they open up the program go to create or edit and they should get a blank or already made floor plan.After that they should be able to add new icons/components to the floorplan or change them location wise on the floor plan.I have been searching into custom user controls and a few post I found on the internet about dynamically creating buttons.The dynamically creating buttons could do if the users can modify their locations and if it could save the whole form after being altered.However I want to be pointed in the right directions and know if any of these will work before I start doing more research and going more in depth.
View 9 Replies
Nov 24, 2011
I am just wondering how to force the creation of a handle of a control before the form that it is contained on is loaded... I have tried:
[Code]...
View 4 Replies
Mar 7, 2010
I have 10 labels named lbl1, lbl2, ... lbl10
I'd like to change their propriety (using a cicle) with the cicle index
for i as integer=1 to 10 step 1
lbl (i) = PROPRETY 'I know this is wrong but it's what I would do...
end for
I'm using a workaround, but I'm looking for a better way..
[Code]...
View 4 Replies
Oct 12, 2009
How would you add Dynamic controls to your form, from an array which size may vary depending on how many controls the user has selected and has been retrieved from a database?
View 2 Replies
Jun 6, 2011
i have a form with many dynamic controls. i want to add an item to a listbox ( by the way, to find this listbox i'm using 'tag'. if someone have any other idea i'll be hope to hear but that's not the problem) in order to do so i use this
For Each ctl As Control In Me.Controls
If TypeOf ctl Is ListBox Then
ctl.items.add("i want to add this line")
[code]....
and items is not recognized and this eror massage apear: 'items' is not a member of 'System.Windows.Forms.Control'.
View 2 Replies
Nov 24, 2011
I want to do a form that can let user manual add in or delete tree node.When they add in, they can set the name and file path.Then it will store in oracle database.Each time my form run it will go through my database then execute all node from there.
View 10 Replies
Feb 16, 2011
I dunno this can work or not..I want to do a form that can let user manual add in or delete tree node.When they add in, they can set the name and file path.
View 1 Replies
Aug 29, 2010
I use Visual Basic 2010 Express. I want to create a WinForm app in which there are several buttons "table1", "table2"... Each button must display the corresponding table of a database in a specified region of the same form.
I'm able to link a MS Access database (.accdb) file to the app. But, how do I create that dynamic area whose content would be one of the database tables of the linked database? I tried using DataGridView, but I'm a newbie and I'm missing something; it doesn't work.
View 6 Replies
Feb 3, 2009
I have created a dynamic form and have added several textboxes controls giving them names such as tb1, tb2 etc. The form is create and displayed, however cannot update the value of the controls.
Private WithEvents gform As New GenerateForm
The form is created using the following from click event of a button
Dim x As Boolean = gform.myForm("AForm") -- Form get created and displayed
x = gform.PopulateForm("a test message") -- The value is passed but not displayed
Public Class GenerateForm
Dim tbMsg As New TextBox()
[Code] .....
View 3 Replies
Oct 21, 2010
I'm creating a dynamic combo box and adding to a form. I'm trying to fill the combo box with a DataSource from an ArrayList and then selecting an item in the combo box based off a value from a property.Problem is, the combo box items don't get bound until after the Form_Load event has finished and the form is visible. So the combo box is empty when I try to set the selected index of the combo box. See code for what I'm doing in detail, and refer to comments in
[code]...
How to select the right selected index for combo box without a hack (Load timer or something stupid like that)?
View 1 Replies
Mar 31, 2009
I'm trying to recreate this feature for a twitter control program using VB Studio 2008. I want the users to be able to sign up their account in my application so they don't have to go to the site and do it.
Because captchas are dynamic images, I cannot pull the image from a src file. I'm pretty new to vb.net so, how would I initiate a session, with the webbrowser control or webclient, and be able to display the captcha image for that session on my form.
View 3 Replies
Jun 2, 2010
I've tried trimming the text, but for some reason, the white text rectangle extends way beyond the text of my checkbox when I create it dynamically. I'm creating a tight array of checkboxes--does anyone know how to prevent this from happening?
View 1 Replies
Nov 3, 2009
I know hoe to add a control at runtime to a form, what I would like to know is if there is a way to add code programmatically at runtime as well?
[Code]...
View 2 Replies
Oct 14, 2009
How would you add a Dynamic Contextmenustrip to your form and how would you add the items to the contextmenustrip. Also when adding the items to the menustrip is it possible to give them names and text dynamically if so how?
View 5 Replies
May 7, 2012
From the dynamic form I added. I realized that I can't get a gif animation to run in the form's background. So I thought I'd give it a try by embeding a picturebox on the dynamic form, but it's not working hence why I'm here.
So on my main form (Form1) I have 2 buttons, openfiledialog, and a picturebox. When you click button1 you browse for the an image to display in the picturebox, and when you press button2 as you can see from the code below. It'll open a new form, but what I want is to have the picturebox displayed over the whole form, but also play the gif animation I selected from my main form via Form1 onto the dynamically embeded one, but in the picturebox. Now I can't use it as BackgroundImage so I'm using it as just an Image, but my problem now is I'm unable to move each borderless form, and am unable to close each as well.[code]....
View 1 Replies