i’ve often had this issue where i do not really understand how to pass userform variables into classes. for example i have a button:
private void button1_Click(object sender, EventArgs e)
{
DoStuff();
}
and a method in the form class:
DoStuff()
{
Class123 myclass = new Class123();
}
...
...
class Class123
{
//how do i pass for example in myotherClass whether or not my checkbox on the userform is checked? i dont want to have to pass from method to method to class to class. what is the logical/smart way of handling this?
ClassData myotherClass = new ClassData();
}
how do i pass for example in myotherClass whether or not my checkbox on the userform is checked? i dont want to have to pass from method to method to class to class. what is the logical/smart way of handling this?
I disagree with this approach.
Any ‘smart’ method, if it even exist, will break the golden rules of Object Oriented Programming.
An object is a self contained item of data that can only be accessed or changed in a controlled way. This prevents side effects, a common problem in procedural code, where data is globally accessible. In OOP, the objects can receive or send messages to other objects only by calling their methods.
EDIT: To show a way to do it
in your doStuff
inside a method of your myOtherClass
this is the same as using a global variable in the old days of procedural languages. This paves the way to difficult to track bugs and creates state mode that render an application hard to maintain