views:

236

answers:

3

Hey Everyone!

I just mocked up a rough UI for a Time Management system and would like to get some feedback on it. What I am looking for in particular if I can achieve what I want to do in Winforms.

Here is the mockup.

http://is.gd/tH2A

The area that gives me concern is the labor categories section. There could be from 1-24 different categories someone will be logging hours against. Since this is a client app i thought about putting a scrollbar in the categories section so it can expand without causing the UI to blow out.

The columns will roll up horizontally..like excel to give a total.

So..what do you think? Is this do able in a Winforms app?

A: 

It is certainly doable, the question is if this is the best way to do it. I would look at some screenshots of existing time management applications to see what they are doing and then ask myself "What about this design wouldn't work for me" and also "What about this design would I like to incorporate into my application". Most of the time management systems will offer screenshots on their website.

BTW: Balsamiq is a pretty cool application.

John
A: 

This would be a good place to put some 3rd party controls in like DevExpress's XtraGrid. You can scroll the columns in the grid while keeping other columns in place (not scrolling).

TheCodeMonk
+1  A: 

First of all, +1 for using Balsamiq to mock up the screen.

I would really have a think about presentation. Make sure your users are happy with only seeing 3 or so categories on screen at once. Offer as many alternatives as you can think of, and allow them to pick a couple to go forward to a prototype. For example, could you provide them with an aggregate view, and allow a drill down instead. With the prototype they can make the final decision with mocked up data, don't offer anything you are unhappy with, you are going to be responsible for it working in the field!

If you are already past the prototype stage and happy with the design, as a rough structure I would start with a datagrid. First of all see what 3rd party control library will offer out of the box. These control libraries always offer significantly more customisation than the base .Net controls. Infragistics is one I would feel able to recommend generally but I can't confirm it will do the kind horizontal scrolling you require.

  • You would want to make a custom cell implementation for the title row, you are unlikely to get the look you want out of the box. This is pretty straight forward to do.

  • The scrollbar will be tricky unless a 3rd party datagrid offers only scrolling a portion of the columns (I assume you want the 2 columns on the right to be onscreen at all times). If you can't get a control to do this for you, I would start by trying to fake it. Put the 'current period' and 'cummulative' columns into a completely new grid control. You can then put a horizontal scroll bar onto the left gridview and keep them visually together by dropping them both into a Pane control. You will need to data bind them both separately to the correct columns so that they are kept in synch with the underlying data.

  • The subtotal controls at the bottom I would keep as simple text boxes and bind them directly to your domain model calculations for these field.

Noel Kennedy
Thanks for the feedback. I think at least 3 columns will show..possibly more since im targeting 1024 width. Possible 5 will fit across. Ill have to look at those 3rd party controls to see if they'll do what i need.
chopps