Click here to Skip to main content
15,890,185 members
Home / Discussions / C#
   

C#

 
GeneralRe: write into .csv Pin
Justin Perez22-Jan-08 5:50
Justin Perez22-Jan-08 5:50 
GeneralRe: write into .csv Pin
arkiboys22-Jan-08 5:57
arkiboys22-Jan-08 5:57 
GeneralRe: write into .csv Pin
Jimmanuel22-Jan-08 7:24
Jimmanuel22-Jan-08 7:24 
GeneralRe: write into .csv Pin
arkiboys22-Jan-08 21:36
arkiboys22-Jan-08 21:36 
GeneralRe: write into .csv Pin
PIEBALDconsult22-Jan-08 7:45
mvePIEBALDconsult22-Jan-08 7:45 
GeneralInvoking Private OR INternal Methods Pin
pencilcake22-Jan-08 5:22
pencilcake22-Jan-08 5:22 
GeneralRe: Invoking Private OR INternal Methods Pin
Skippums22-Jan-08 7:15
Skippums22-Jan-08 7:15 
GeneralRe: Invoking Private OR INternal Methods Pin
pencilcake22-Jan-08 12:32
pencilcake22-Jan-08 12:32 
Hi!
With the help of BindingFlags I managed to do what I need. So, you can get a private, internal, or basicaly non-static methods by using BindingFlags parameters either from the same class or from a different class.

The code below writes "ClassA's internal Method1 invoked." two times on the console.
Thanks!

class ClassA
{
internal void Method1()
{
string message = "ClassA's internal Method1 invoked.";
Console.WriteLine(message);
}

public void MethodInvoker ()
{
Type typeOfClassA = (new ClassA()).GetType();

//GET the internal Method1 of ClassA:
MethodInfo methodToInvoke = typeOfClassA.GetMethod"Method1",BindingFlags.Instance|BindingFlags.NonPublic);
methodToInvoke.Invoke(this, null);
}
}

class ClassB
{
public static void InvokeMethod2InClassA ()
{
ClassA classAObject = new ClassA();
Type typeOfClassA = classAObject.GetType();

//GET the internal Method1 of ClassA from ClassB:
MethodInfo methodToInvoke = typeOfClassA.GetMethod("Method1", BindingFlags.Instance | BindingFlags.NonPublic);
methodToInvoke.Invoke(classAObject, null);
}
}
class Program
{
static void Main(string[] args)
{
ClassA invoker = new ClassA();
invoker.MethodInvoker();

ClassB.InvokeMethod2InClassA();

Console.ReadLine();
}
}
GeneralRe: Invoking Private OR INternal Methods Pin
Skippums22-Jan-08 15:06
Skippums22-Jan-08 15:06 
GeneralRe: Invoking Private OR INternal Methods Pin
PIEBALDconsult23-Jan-08 3:13
mvePIEBALDconsult23-Jan-08 3:13 
GeneralRe: Invoking Private OR INternal Methods Pin
PIEBALDconsult22-Jan-08 7:50
mvePIEBALDconsult22-Jan-08 7:50 
QuestionMouseDown Event in a DataGridView Pin
Jpeters422-Jan-08 5:02
Jpeters422-Jan-08 5:02 
GeneralRe-Compile Pin
jchigg200022-Jan-08 3:56
jchigg200022-Jan-08 3:56 
AnswerRe: Re-Compile Pin
coolestCoder22-Jan-08 4:00
coolestCoder22-Jan-08 4:00 
GeneralSMTP server port Pin
TheJudeDude22-Jan-08 3:25
TheJudeDude22-Jan-08 3:25 
AnswerRe: SMTP server port Pin
coolestCoder22-Jan-08 3:53
coolestCoder22-Jan-08 3:53 
GeneralRe: SMTP server port Pin
TheJudeDude23-Jan-08 4:59
TheJudeDude23-Jan-08 4:59 
GeneralRe: SMTP server port Pin
coolestCoder23-Jan-08 6:04
coolestCoder23-Jan-08 6:04 
GeneralRe: SMTP server port Pin
TheJudeDude23-Jan-08 7:46
TheJudeDude23-Jan-08 7:46 
GeneralRe: SMTP server port Pin
coolestCoder23-Jan-08 22:57
coolestCoder23-Jan-08 22:57 
GeneralRe: SMTP server port Pin
TheJudeDude25-Jan-08 7:38
TheJudeDude25-Jan-08 7:38 
GeneralClosing an open database connection when debugging starts Pin
dabs22-Jan-08 2:23
dabs22-Jan-08 2:23 
GeneralRe: Closing an open database connection when debugging starts Pin
Justin Perez22-Jan-08 3:22
Justin Perez22-Jan-08 3:22 
GeneralRe: Closing an open database connection when debugging starts Pin
dabs22-Jan-08 3:28
dabs22-Jan-08 3:28 
GeneralRe: Closing an open database connection when debugging starts Pin
Justin Perez22-Jan-08 3:37
Justin Perez22-Jan-08 3:37 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.