Well, and that is part of the problem with the 'New Record' button -- can't add any other actions to it. But, in general, you can add either a field to your main data source or add a secondary data connection to an XML file and then set a value in that field that you can base your conditional formatting on -- for example, set a field to true() on a button click and have a section set to show or hide if the field is equal to true().
Definitely you can switch views in code (C#):
this.ViewInfos.SwitchView("name of view");
To replicate the New Record, though... I think what you'd need to do is remove all the repeating groups in your data source, then create a new blank one (cloning from sampledata.xml works well....). This would give you a single, blank group. However, I'm not certain what all the New Record action does, so you would want to carefully test Submit and so forth if you take that route...