Project management app (best way to do this?)

My boss has asked me to write a Lite version of Microsoft Project.  It will contain just a few basic functions.  If you look at the left side of a MS Project screenshot, you will see where they show Task Name, Duration, etc.  I assume a listview would be ok to use there.  On the right side, where you see the date span information - what controls would you suggest I use there?  I just want suggestions on how you guys would handle that.

I was hoping to databind the left side to a database but I guess VB doesn't allow databinding in a listview.  So far I have created a SQL database to store TaskNumber, TaskName, Who, Duration, Start, Finish, Dependancy.

I know there are free Project apps out there, but he wants me to write our own.

Thanks in advance.

Edit:  included a pic of what i have so far (using a Split container control)

 Pic of what i have so far
LVL 1
LD147Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

alexey_gusevCommented:
0
LD147Author Commented:
I appreciate the response, but that project is written in C++.  I'm looking to do this in VB as i am familiar with VB.
0
alexey_gusevCommented:
well, you wanted ideas, didn't you ;)
0
Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

LD147Author Commented:
I'm going to use a bound DataGrid view for the left pane (because the user can then edit the fields).  Still need to figure out the date span thing though.  Can I draw/paint in a cell in a datagrid?
0
alexey_gusevCommented:
yes, you can, you can even create custom column for datagrid and perform there whatever you want
0
LD147Author Commented:
Well, my dataGrid is being a pain in the *#*&#*&#@.  I had assumed that because I bound it to the SQL database, and it shows the data just fine, it would also update back to the database automatically when I typed into the grids.  Guess not.... grrrrrrr! ;)
0
LD147Author Commented:
Aha!  Thanks for the link.  I was able to add a line of code that makes the update work as planned.
0
alexey_gusevCommented:
great.

so generally speaking, you might base your UI on datagridview + a bunch of custom columns if necessary. that would be the simplest case.

in more complicated approach you might want something like treeview maybe, or custom grid to be able to define hierarchical sub-tasks. the possibilities are infinite :)
0
LD147Author Commented:
Well I decided to do the whole thing in a datagrid and not mess with the split container.  Here's a pic of what I have so far.  Now, in the column to the right of the "Dependency" column, I just need to be able to draw a bar, to represent the time span of the tasks.  I have already determined the earliest date used, the latest date used, which of course gives me a complete span value, in days.  

BTW, I would love to omit weekends from the duration.
capture2.JPG
0
alexey_gusevCommented:
just define your custom column and add it to the datagrid:

http://www.code-magazine.com/Article.aspx?quickid=0707061

you can find a lot of samples on the net, just google for it :) . Above one seems doing what you want
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
alexey_gusevCommented:
any news?
0
LD147Author Commented:
I'll be on this today.  You sent the previous response on the weekend ;)
0
LD147Author Commented:
I guess I will keep googling for something more simple.  I can't follow that web page.  I pasted everything in and I guess I haven't pasted something in the right spot and it's giving me errors.  I need something easy to implement, but I will reward you in a little bit for your work.

Why can't a solution to something like this be as easy as:

1) Specify which cell you would like to draw in.
2) draw a filled rectangle in that cell.
3) Done.

:)

It should be 4 or 5 lines of code.  Instead, you have to jump through rings of fire to do anything.

lol
0
alexey_gusevCommented:
that's what custom column is for.

but before doing it, you could inspect datagridview existing events:

http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview_members.aspx

one of OnCellXXX might be just what you need.
0
LD147Author Commented:
This is what I've managed to do.  It's a bit of a cheat but it works surprisingly well.  I simply used the "|" character and repeated it based on the duration.  It looks ok (to me) and does the job well enough. ;)  Now I can make a few little enhancements to it, and I should be done with it soon :)


Capture3.JPG
0
alexey_gusevCommented:
as long as it works for you :)


but honestly, I don't see why couldn't you follow the sample from the article, it describes how to create custom column and optionally custom cell for it, then you could do whatever you like in its OnPaint() method
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
.NET Programming

From novice to tech pro — start learning today.