The project I'm working on has just hit 4200 lines in the main C# file, which is causing Intellisense to take a few seconds (sometimes up to 6 or so) to respond, during which Visual Studio locks up. I'm wondering how everyone else splits their files and whether there's a consensus.
I tried to look for some guides and found Google's C++ guide but I couldn't see anything about semantics such as function sizes and file sizes, maybe it's there - I haven't looked at it for a while.
So how do you split your files? Do you group your methods by the functions they serve? By types (event handlers, private/public)? And at what size limit do you split functions?
Edit: To clarify, the application in question handles data - so it's interface is a big-ass grid, and everything revolves around the grid. It has a few dialogs forms for management but it's all about the data. The reason why it's so big as there is a lot of error checking, event handling, and also the grid set up as master-detail with 3 more grid for each row (but these load on master row expanded). I hope this helps to clarify what I'm on about.