Is it possible to pass in a bool
variable into an overridden toString()
method, so it can conditionally print the object in different formats?
If you are talking about your own class, you could do the following:
public class MyClass
{
public bool Flag { get; set; }
public MyClass()
{
Flag = false;
}
public override string ToString()
{
if (Flag)
{
return "Ok";
}
else
{
return "Bad";
}
}
}
And use it
MyClass c = new MyClass();
Console.WriteLine(c); //Bad
c.Flag = true;
Console.WriteLine(c); //Ok
Console.ReadLine();
Your Flag
could be some private field and change its value, depending on some inner conditions. It's all up to you.