?
Solved

Call a procedure from another procedure on a different form in C#

Posted on 2013-06-27
14
Medium Priority
?
327 Views
Last Modified: 2013-07-10
Hey guys!!

I am trying to call a public procedure 'postMessageToSystem()' on frmPOSLoad from a procedure on frmViewRX and I can't seem to find a straightforward answer.

Help please!!!  :-)

Jerry
0
Comment
Question by:JDL129
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 9
  • 5
14 Comments
 
LVL 40

Expert Comment

by:Kyle Abrahams
ID: 39281771
You would have to instantaite the form:

eg:

Form v = new frmViewRX();
v.postMessageToSystem();

If you're having a bunch of common functions it's better to create a seperate class (possibly even static) and do something like:

ApplicationHelper.postMessageToSystem();

static class ApplicationHelper
{
   public ApplicationHelper()
{
}
  public static postMessageToSystem()

{
   // code goes here.
}
}
0
 

Author Comment

by:JDL129
ID: 39281898
ged325!!!  Thanks for the post!!

I am a newbie in C#.  Could you possibly expound a little.  I tried both methods and could get neither to work.  I place the first part of the answer on frmViewRX but the error I received was that it couldn't find postMessageToSystem which is on frmPOSLoad.

I also tried the second part but that was a disaster.  I added a new class but didn't know exactly where to put the code.

Thanks again,
Jerry
0
 

Author Comment

by:JDL129
ID: 39282086
ged325!!  I went back and tried adding the class again and I'm down to one error on then
public static postMessageToSystem:


          Method must have a turn type.

Thanks for the post!!!!
Jerry
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:JDL129
ID: 39282112
ged325!!  Actually all I want to do is run the code in the class.

thanks,
Jerry
0
 
LVL 40

Expert Comment

by:Kyle Abrahams
ID: 39282181
forgot the void . . . was typing it off the top of my head.

Change void if you need to return something.


  public static void postMessageToSystem()
{
}
0
 

Author Comment

by:JDL129
ID: 39282703
ged325!!!  My but you overestimate me!!!!

Can you give me the bite sized instructions as to how to run a procedure on a different form instead of the chunks you guru's use?  :-)

Surely there is an easy way to do this:
I am trying to call a public procedure 'postMessageToSystem()' on frmPOSLoad from a procedure on frmViewRX.

Thanks,

Jerry
0
 
LVL 40

Accepted Solution

by:
Kyle Abrahams earned 800 total points
ID: 39282796
in your frmViewRX:


Form f = new frmPOSLoad();
   f.postMessageToSystem();
0
 

Author Comment

by:JDL129
ID: 39283292
ged325!!  Thanks for the post!!

I put the code in as instructed but I get this error:

Error      98      'System.Windows.Forms.Form' does not contain a definition for 'postMessageToSystem' and no extension method 'postMessageToSystem' accepting a first argument of type 'System.Windows.Forms.Form' could be found (are you missing a using directive or an assembly reference?)      C:\POSiTrackRx\POSiTrackC\frmViewRX.cs      2282      15      POSiTrackC


Thanks,

Jerry
0
 
LVL 40

Expert Comment

by:Kyle Abrahams
ID: 39284368
cna you post the entire source of
frmPOSLoad and the procedure in question?
0
 

Author Comment

by:JDL129
ID: 39284583
Sorry but I finally just copied the frmPOSLoad code to frmViewRX.  Why did I get the error?  I can't believe it's this hard!  In vb6 and vb.net it is much easier.

Thanks anyway,

Jerry
0
 
LVL 40

Expert Comment

by:Kyle Abrahams
ID: 39294598
VB .Net and C# should be the same, not sure why oyu're getting the error without seeing the relevant code.
0
 

Author Comment

by:JDL129
ID: 39295480
ged325!!  

The called procedure is 2 or 3 pages long and doesn't return a value.

I'm not sure why it would matter what was in the procedure.  All I want to do is to execute the procedure from a different form and then return the execution to the originating form.

Thanks for the post!!

Jerry
0
 

Author Comment

by:JDL129
ID: 39298831
ged325!!

Are we done?

Thanks for the try!!

Jerry
0
 

Author Closing Comment

by:JDL129
ID: 39314963
Thanks!!  I appreciate the time invested!!
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

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

Article by: Najam
Having new technologies does not mean they will completely replace old components.  Recently I had to create WCF that will be called by VB6 component.  Here I will describe what steps one should follow while doing so, please feel free to post any qu…
Summary: Persistence is the capability of an application to store the state of objects and recover it when necessary. This article compares the two common types of serialization in aspects of data access, readability, and runtime cost. A ready-to…
In this video we outline the Physical Segments view of NetCrunch network monitor. By following this brief how-to video, you will be able to learn how NetCrunch visualizes your network, how granular is the information collected, as well as where to f…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.

801 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