The CSV renderer ignores the visible state of elements in a report definition (sections, headers, footers, text boxes etc.) with the Visible property to false - either explicity or by binding.
This results in much redundant content in the CSV file, that is often not even the actual output/result data - which should be the primary focus of a format like CSV.
Being able to control the output brings much flexibility to the CSV feature. Though Reporting primarily has a focus on a more rich, visual display of data, having access to the same "raw" result set that a report would evaluate can be very useful, without having to try replicate through other means.
Binding the Visible property of elements to: = RenderingFormat.Name <> "CSV" would allow the choice of including what makes sense in the ouput, even allowing a different "view" of the data, which could contain just detail row fields or additionally, summary fields from group and report headers & footers.