Another approach is to gather the user input and based on that create/change the report programmatically. Note that creating a tool or a module which will generate the entire report definition on the fly based on some user defined rules and settings is not a trivial matter. In general, the fastest way to do this is to to create the desired report layout in the Visual Studio Report Designer and use the code it automatically generated in the .Designer.cs
file as a template for dynamic report generation. In this undertaking you may also find useful the Programmatic Control of Reports
help articles on the topic and the Reporting API Reference
property of a report item/section is easier and more straight forward approach, however you may go with the programmatic report generation if you don't mind the extra coding needed.
Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.