By-passing compile time object exists check

Posted on 2006-11-23
Last Modified: 2010-04-23
Hey guys, hope someone can help me fairly urgently. I am writng code that will be re-used in various differing applications and basically I want whoever ends up developing software to be able to decide which information to have on their form.
I am simplyfying things by creating some code we can reuse, in this code I am making it write to an object on the form (a series of text boxes) of which some may not exist. I want to be able to skip the VB code-checking facility so that I can compile and run the code and just have an error checker that supresses when data is sent to an object that doesn't exist.

So, to re-word that a bit, I have say 20 pieces of data, when i call a function from my class file I want it to take a reference, look through an object I have already created, locate the record and attempt to write the data to 20 text boxes, whether the developer has put them on the form or not. If they don't appear on the form then I want the code to siply go to the next piece in the record and attempt to move that to a text box.

We all know VB throws a strop and says that if text1 doesn't exist on form1 it wont compile...I wanna supress this and then write code that supresses it at run-time.

Hope soemone can help!

PS: I can't change my object that I access the data out of or the way I do that, i can just access it for read or write and I want to do the middle add-in between a form calling one of a small set of methods and the actual code writting out and in upto a hundred pieces of data per record (and some other data manipulation)

Oh, and if someone could tell me what the 'return' line is in code (i.e., insert 'new line' in a string' that would really rock too!)
Question by:kiranboi
  • 3
  • 2
  • 2
  • +1
LVL 39

Assisted Solution

appari earned 75 total points
ID: 18006136
>>I want to be able to skip the VB code-checking facility
i think it is not possible, if you can post existing code and what you were trying to achieve we can try to do it in an alternative way.

>>tell me what the 'return' line is in code
use vbCrlf, as follows

dim testString as string = "insert " & vbcrlf & " in a string "

Expert Comment

ID: 18006622
Surely something like iterating all available controls of type Textbox on the form would be a better approach?

Author Comment

ID: 18006710
I couldn't do that plenderj because I do not know which textboxes the programmer will eventually use nor in what order and so i will end up with text boxes with the wrong data in and some of the data is going in combo boxes, checkboxes etc.
I wondered if for the purposes of 'building' that there may be a way to remove all the debugger stuff and force a build with the errors in?
hope there is a way, else I'm writting things in a completely new way lol
Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.


Assisted Solution

plenderj earned 200 total points
ID: 18006783
Well two ideas:

1) Change your code such that your procedure takes a list of parameters of type Textbox, which are the textboxes the developer wants you to put the data into. You can reference these textbox parameters in the body of your method. I recommend using this option


2) Try using the code from this page below. You can still hardcode the names of the textboxes (which you shouldn't be doing btw!!!!) and just reference them as follows:
LVL 34

Accepted Solution

Sancler earned 225 total points
ID: 18006792
I'm far from sure that I've understood the setup here.  But try this

One form, one button, this code

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If TextBox1 Is Nothing Then
            TextBox1.Text = "doh"
        End If
    End Sub

For me it complies and runs, no errors or warnings.  Now drag a textbox onto the form - leaving its default name of TextBox1.  For me, that complies and runs too, with the right result in the textbox.


Expert Comment

ID: 18006830
I believe that would only work if you explicitly set Option Explicit Off
LVL 34

Expert Comment

ID: 18007021
plenderj.  Correct.  Sorry, I took that "as read", but you're probably right to make it explicit.


Author Comment

ID: 18011602
OK, thanks guys for all your help - going to get admin to split the points.

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

1.0 - Introduction Converting Visual Basic 6.0 (VB6) to Visual Basic 2008+ (VB.NET). If ever there was a subject full of murkiness and bad decisions, it is this one!   The first problem seems to be that people considering this task of converting…
Creating an analog clock UserControl seems fairly straight forward.  It is, after all, essentially just a circle with several lines in it!  Two common approaches for rendering an analog clock typically involve either manually calculating points with…
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.
Established in 1997, Technology Architects has become one of the most reputable technology solutions companies in the country. TA have been providing businesses with cost effective state-of-the-art solutions and unparalleled service that is designed…

785 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question