How would you design this Windows form?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Ronald S. Cook

    #1

    How would you design this Windows form?

    I need ideas on how to best design a Windows form for my particular
    situation.

    On a cattle feeding yard there will be between about 300 and 600 pens. On
    my "Pen Feeding Sequence" form, I want the user to be able to setup and
    maintain the order in which the pens should be fed (ultimately in the Pen
    table is a column named Sequence that gets an interger value).

    So on the form...

    Sequence Pen
    1 A101
    2 A102
    3 B245
    4 C763


    Easy enough.

    I suppose I could have a datagrid of Pens ordered by sequence and the user
    would click to edit each row and put a number (or blank) for the sequence
    number. But that's the easy way out for me the developer.

    I want what would be slick for the user. Some sort of dragging of a pen to
    a number? I could see that easily if the number of pens would fit on one
    form but we're talking hundreds here.

    Any thoughts?

    Thanks,
    Ron




  • EMartinez

    #2
    Re: How would you design this Windows form?

    On Mar 21, 7:09 pm, "Ronald S. Cook" <r...@westinis. comwrote:
    I need ideas on how to best design a Windows form for my particular
    situation.
    >
    On a cattle feeding yard there will be between about 300 and 600 pens. On
    my "Pen Feeding Sequence" form, I want the user to be able to setup and
    maintain the order in which the pens should be fed (ultimately in the Pen
    table is a column named Sequence that gets an interger value).
    >
    So on the form...
    >
    Sequence Pen
    1 A101
    2 A102
    3 B245
    4 C763
    >
    Easy enough.
    >
    I suppose I could have a datagrid of Pens ordered by sequence and the user
    would click to edit each row and put a number (or blank) for the sequence
    number. But that's the easy way out for me the developer.
    >
    I want what would be slick for the user. Some sort of dragging of a pen to
    a number? I could see that easily if the number of pens would fit on one
    form but we're talking hundreds here.
    >
    Any thoughts?
    >
    Thanks,
    Ron
    I would most likely use a DataGridView for this purpose. Ofcourse, the
    ultimate in fancy could be provided using an Adobe Flex front-end w/a
    VB.NET middle tier. Here is an example and the Flex site as well. Hope
    this is helpful.

    http://www.templatesoft.com/
    http://www.adobe.com/devnet/flex/?tab:samples=1

    Regards,

    Enrique Martinez
    Sr. Software Consultant

    Comment

    • jeff

      #3
      Re: How would you design this Windows form?



      If you are looking for a drag and drop type of interface ... maybe look at
      Tree Views for doing this...

      Two tree views on a form ...

      Left side tree veiw - YOUR SCHEDULE
      0-100 (77 openings)
      0-10 (2 openings)
      1 Pen001
      2 - OPEN -
      3 Pen356
      4 -OPEN -
      5
      ...
      11-20 (10 openings)
      21-30 (8 openings)
      ...
      101-200
      201-300
      ....

      You can use whatever grouping (ie every 100, then 10's make it user
      cutomizable)

      Rigth Side Tree View - Your PENS
      Same as you pens...but allow the user to define and build there own grouping
      mechanism ... allow them 2 levels of group...
      - Yard and Location - some way to organize / represent / group your tabular
      data spatially.

      Yard 1 (45 pens)
      Location A (10 pens)
      Pen001 - No Scheduled
      Pen004 - 300
      Pen007 - 301
      Loaction B (20 pens)
      Pen 034
      Pen 050
      Pen 051
      Yard 2
      Location C
      Location D

      .....

      You could develop context menus to allow the user to easily drag and drop
      items ...
      You could have the two treeviews side by each ... allow the user to drag and
      drop items BOTH ways ...


      ............... ...

      OR another design approach...

      Left side treeview ... YOUR PENS
      Right hand 'grid view' like a calender...bloc ks...

      -------------------------------------------------------------
      | 1 - 10 | 11 - 20 | | ...
      | Pen 1 | | |
      | Pen 3 | | |
      | | | |
      -------------------------------------------------------------
      | 31-40 | | | ...
      | | | |
      | | | |
      | | | |
      -------------------------------------------------------------

      Hard to draw...but make it like a calender view, where you can see each day
      of the month it a grid. (Sun to Sat along the top and each week below).

      Make logical blocks ... have them roll-up and roll-down to show and hide
      detail... Give information in the header of each block (sequence from,
      available slots and so on) SO the user can tell what is going on when
      looking at a row of blocks that are roll-up.

      There a lots of ways to accomplish this, you simple need to determine how
      often the user needs to set this up and how much fun you want to have
      building the interface. The easy way is to have two grid views side by each
      .... but this is not fun.

      Food for thought
      Jeff


      "Ronald S. Cook" <rcook@westinis .comwrote in message
      news:u8OsOZBbHH A.4544@TK2MSFTN GP03.phx.gbl...
      >I need ideas on how to best design a Windows form for my particular
      >situation.
      >
      On a cattle feeding yard there will be between about 300 and 600 pens. On
      my "Pen Feeding Sequence" form, I want the user to be able to setup and
      maintain the order in which the pens should be fed (ultimately in the Pen
      table is a column named Sequence that gets an interger value).
      >
      So on the form...
      >
      Sequence Pen
      1 A101
      2 A102
      3 B245
      4 C763
      >
      >
      Easy enough.
      >
      I suppose I could have a datagrid of Pens ordered by sequence and the user
      would click to edit each row and put a number (or blank) for the sequence
      number. But that's the easy way out for me the developer.
      >
      I want what would be slick for the user. Some sort of dragging of a pen
      to a number? I could see that easily if the number of pens would fit on
      one form but we're talking hundreds here.
      >
      Any thoughts?
      >
      Thanks,
      Ron
      >
      >
      >
      >

      Comment

      • Ronald S. Cook

        #4
        Re: How would you design this Windows form?

        Great ideas.. thanks!


        "jeff" <jhersey at allnorth dottt comwrote in message
        news:e0%23tBEJb HHA.4832@TK2MSF TNGP02.phx.gbl. ..
        >
        >
        If you are looking for a drag and drop type of interface ... maybe look at
        Tree Views for doing this...
        >
        Two tree views on a form ...
        >
        Left side tree veiw - YOUR SCHEDULE
        0-100 (77 openings)
        0-10 (2 openings)
        1 Pen001
        2 - OPEN -
        3 Pen356
        4 -OPEN -
        5
        ...
        11-20 (10 openings)
        21-30 (8 openings)
        ...
        101-200
        201-300
        ...
        >
        You can use whatever grouping (ie every 100, then 10's make it user
        cutomizable)
        >
        Rigth Side Tree View - Your PENS
        Same as you pens...but allow the user to define and build there own
        grouping mechanism ... allow them 2 levels of group...
        - Yard and Location - some way to organize / represent / group your
        tabular data spatially.
        >
        Yard 1 (45 pens)
        Location A (10 pens)
        Pen001 - No Scheduled
        Pen004 - 300
        Pen007 - 301
        Loaction B (20 pens)
        Pen 034
        Pen 050
        Pen 051
        Yard 2
        Location C
        Location D
        >
        ....
        >
        You could develop context menus to allow the user to easily drag and drop
        items ...
        You could have the two treeviews side by each ... allow the user to drag
        and drop items BOTH ways ...
        >
        >
        ............... ..
        >
        OR another design approach...
        >
        Left side treeview ... YOUR PENS
        Right hand 'grid view' like a calender...bloc ks...
        >
        -------------------------------------------------------------
        | 1 - 10 | 11 - 20 | | ...
        | Pen 1 | | |
        | Pen 3 | | |
        | | |
        |
        -------------------------------------------------------------
        | 31-40 | | |
        ...
        | | |
        |
        | | |
        |
        | | |
        |
        -------------------------------------------------------------
        >
        Hard to draw...but make it like a calender view, where you can see each
        day of the month it a grid. (Sun to Sat along the top and each week
        below).
        >
        Make logical blocks ... have them roll-up and roll-down to show and hide
        detail... Give information in the header of each block (sequence from,
        available slots and so on) SO the user can tell what is going on when
        looking at a row of blocks that are roll-up.
        >
        There a lots of ways to accomplish this, you simple need to determine how
        often the user needs to set this up and how much fun you want to have
        building the interface. The easy way is to have two grid views side by
        each ... but this is not fun.
        >
        Food for thought
        Jeff
        >
        >
        "Ronald S. Cook" <rcook@westinis .comwrote in message
        news:u8OsOZBbHH A.4544@TK2MSFTN GP03.phx.gbl...
        >>I need ideas on how to best design a Windows form for my particular
        >>situation.
        >>
        >On a cattle feeding yard there will be between about 300 and 600 pens.
        >On my "Pen Feeding Sequence" form, I want the user to be able to setup
        >and maintain the order in which the pens should be fed (ultimately in the
        >Pen table is a column named Sequence that gets an interger value).
        >>
        >So on the form...
        >>
        >Sequence Pen
        >1 A101
        >2 A102
        >3 B245
        >4 C763
        >>
        >>
        >Easy enough.
        >>
        >I suppose I could have a datagrid of Pens ordered by sequence and the
        >user would click to edit each row and put a number (or blank) for the
        >sequence number. But that's the easy way out for me the developer.
        >>
        >I want what would be slick for the user. Some sort of dragging of a pen
        >to a number? I could see that easily if the number of pens would fit on
        >one form but we're talking hundreds here.
        >>
        >Any thoughts?
        >>
        >Thanks,
        >Ron
        >>
        >>
        >>
        >>
        >
        >

        Comment

        • Branco Medeiros

          #5
          Re: How would you design this Windows form?

          Ro Cook wrote:
          <snip>
          On a cattle feeding yard there will be between about 300 and 600 pens. On
          my "Pen Feeding Sequence" form, I want the user to be able to setup and
          maintain the order in which the pens should be fed (ultimately in the Pen
          table is a column named Sequence that gets an interger value).
          >
          So on the form...
          >
          Sequence Pen
          1 A101
          2 A102
          3 B245
          4 C763
          <snip>
          I want what would be slick for the user. Some sort of dragging of a pen to
          a number? I could see that easily if the number of pens would fit on one
          form but we're talking hundreds here.
          <snip>

          Hi, Ron.

          You could use the (popular) move up/down buttons, only that it could
          operate in multiple selected items; and context menu items for "Move
          to...", "Move selected items to here", etc.

          HTH.

          Regards,

          Branco.

          Comment

          • jeff

            #6
            Re: How would you design this Windows form?


            ....another idea would be to have a schedule hierachy...

            not knowing your business, but I would assume that the pens are grouped in
            some logical manner ... spatially ... by a work area or work zone or
            something ... similar to Employees in a company ... company, division,
            department ... this allows you (the programmer) to form some type of
            relationship between groups of pens

            So, ... saying this and based on the following assumations... here is what I
            am trying to say.

            Assume:
            many cattle feeding yards per install (top of the pen 'grouping')
            each yard is broken into work zones.
            each pen belongs to 1 work zone.

            Now, you would create the yards (yard A, yard B, yard C, ...)
            Now, you would create all the Work Zones in yard A (WZ A01, WZ A02...), yard
            B (WZ B01, WZ B02) and so on for each yard Come up with some type of naming
            convention.
            Now, you assign each pen to a work zone...

            So, you now have your pens organized by logical units of work...or
            management units.

            Now, for each work zone, you would schedule your pens for feeding ...
            relative to the parent work zone.
            Now, for each yard, you would schedule each work zone...relative to the
            parent yard.
            Now, you would schedule each yard.

            This way, when you are 'rescheduling' feeding patterns (for what ever
            reason, mix it up for the farmer ... i do not know...), you can easily
            reschedule BLOCKS of pens without having to touch or move every single pen.

            This will only work if pens can be logically grouped and remained grouped.
            Otherwise, if the user is constantly having to move pens from one work zone
            to another, in order to achieve the proper feed schedule, this approach many
            cause them a bit of problem.

            However, saying this, it is a more logical approach to help with the 'Pens
            Feeding Schedule WorkFlow' ... chances are - intentionally or
            unintentionally , the pens are grouped in some logical manner for improved
            feeding efficiency. Identify this and mirror this in the program and you
            will be ahead of the game.

            Even if the farmer or client does not operate like this (or says he does not
            operate like this), i would implement this structure anyways, because,
            somebody will operate like this and this will be a good feature to have.
            For the guy that does not, simply create 1 yard with 1 zone and assign all
            the pens to that zone ... done!

            Food for thought ... ooops stupid joke.

            Jeff


            "Ronald S. Cook" <rcook@westinis .comwrote in message
            news:u9LfilJbHH A.4720@TK2MSFTN GP04.phx.gbl...
            Great ideas.. thanks!
            >
            >
            "jeff" <jhersey at allnorth dottt comwrote in message
            news:e0%23tBEJb HHA.4832@TK2MSF TNGP02.phx.gbl. ..
            >>
            >>
            >If you are looking for a drag and drop type of interface ... maybe look
            >at Tree Views for doing this...
            >>
            >Two tree views on a form ...
            >>
            >Left side tree veiw - YOUR SCHEDULE
            >0-100 (77 openings)
            > 0-10 (2 openings)
            > 1 Pen001
            > 2 - OPEN -
            > 3 Pen356
            > 4 -OPEN -
            > 5
            > ...
            > 11-20 (10 openings)
            > 21-30 (8 openings)
            > ...
            >101-200
            >201-300
            >...
            >>
            >You can use whatever grouping (ie every 100, then 10's make it user
            >cutomizable)
            >>
            >Rigth Side Tree View - Your PENS
            >Same as you pens...but allow the user to define and build there own
            >grouping mechanism ... allow them 2 levels of group...
            >- Yard and Location - some way to organize / represent / group your
            >tabular data spatially.
            >>
            >Yard 1 (45 pens)
            > Location A (10 pens)
            > Pen001 - No Scheduled
            > Pen004 - 300
            > Pen007 - 301
            > Loaction B (20 pens)
            > Pen 034
            > Pen 050
            > Pen 051
            >Yard 2
            > Location C
            > Location D
            >>
            >....
            >>
            >You could develop context menus to allow the user to easily drag and drop
            >items ...
            >You could have the two treeviews side by each ... allow the user to drag
            >and drop items BOTH ways ...
            >>
            >>
            >.............. ...
            >>
            >OR another design approach...
            >>
            >Left side treeview ... YOUR PENS
            >Right hand 'grid view' like a calender...bloc ks...
            >>
            >-------------------------------------------------------------
            >| 1 - 10 | 11 - 20 | | ...
            >| Pen 1 | | |
            >| Pen 3 | | |
            >| | | |
            >-------------------------------------------------------------
            >| 31-40 | | |
            >...
            >| | | |
            >| | | |
            >| | | |
            >-------------------------------------------------------------
            >>
            >Hard to draw...but make it like a calender view, where you can see each
            >day of the month it a grid. (Sun to Sat along the top and each week
            >below).
            >>
            >Make logical blocks ... have them roll-up and roll-down to show and hide
            >detail... Give information in the header of each block (sequence from,
            >available slots and so on) SO the user can tell what is going on when
            >looking at a row of blocks that are roll-up.
            >>
            >There a lots of ways to accomplish this, you simple need to determine how
            >often the user needs to set this up and how much fun you want to have
            >building the interface. The easy way is to have two grid views side by
            >each ... but this is not fun.
            >>
            >Food for thought
            >Jeff
            >>
            >>
            >"Ronald S. Cook" <rcook@westinis .comwrote in message
            >news:u8OsOZBbH HA.4544@TK2MSFT NGP03.phx.gbl.. .
            >>>I need ideas on how to best design a Windows form for my particular
            >>>situation.
            >>>
            >>On a cattle feeding yard there will be between about 300 and 600 pens.
            >>On my "Pen Feeding Sequence" form, I want the user to be able to setup
            >>and maintain the order in which the pens should be fed (ultimately in
            >>the Pen table is a column named Sequence that gets an interger value).
            >>>
            >>So on the form...
            >>>
            >>Sequence Pen
            >>1 A101
            >>2 A102
            >>3 B245
            >>4 C763
            >>>
            >>>
            >>Easy enough.
            >>>
            >>I suppose I could have a datagrid of Pens ordered by sequence and the
            >>user would click to edit each row and put a number (or blank) for the
            >>sequence number. But that's the easy way out for me the developer.
            >>>
            >>I want what would be slick for the user. Some sort of dragging of a pen
            >>to a number? I could see that easily if the number of pens would fit on
            >>one form but we're talking hundreds here.
            >>>
            >>Any thoughts?
            >>>
            >>Thanks,
            >>Ron
            >>>
            >>>
            >>>
            >>>
            >>
            >>
            >
            >

            Comment

            Working...