Welcome to the SRP Forum! Please refer to the SRP Forum FAQ post if you have any questions regarding how the forum works.

Databound

Can the controls in the panel be databound
If so, how would the data collection and subsequent saving be handled on change of panel controls
Hoping I am understanding the use of the panel control correctly

I assume that if you had a form to design that had more than 16 tabs(Pages) you could use the panel control and the srp tabs within srp tabs

Comments

  • You can put either a bunch of controls into a panel, or you can embed an entire form. If you choose the former, they must be controls that already exist on the form that has the panel. If the controls happen to be data bound, they will still behave as though they belong to that form. Thus, nothing should change, not even your form logic. If you choose to embed an entire form, then that form still behaves like a standalone form and data bound controls don't even know their parent form is embedded.

    Now, let's say you have a master form with 3 panels, and each panel embeds 3 different smaller data bound forms. As far as OI is concerned, this would be identical to having those smaller forms floating on the desktop. That is, they operate independently. So, you would have to a bit of work to make them coordinate as though they were just a part of the one master form.

    The panel was created to solve a problem where we needed to place controls into a scrolling area in order to keep a lot of controls in a single form on a small screen. It was never designed (nor is OI designed) to support the idea of putting forms within forms within forms. You can do it to a degree, but the deeper the layers go, the more work it's going to put on you as the developer to keep it all well behaved.
  • Barry,

    The answer to your question is "yes".

    The forms that you embed using the SetForm method are still forms and manage their own events. They are only visually linked to the form that contains the SRP Panel control.

    Thus, will will need to send a WRITE event to the embedded form via its window name whenever the main form needs to save data. If you have multiple embedded forms then each one will need to have this done to them.
  • also
    in the example to add all the controls from a window, it shows that you do a
    NewWindow = Start_Window("MY_WINDOW")
    wont that open the window
  • Yes. You have to have OI open the window first. Only then can you get the HANDLE property to pass to the panel. To keep it clean, therefore, MY_WINDOW should be invisible by default. The panel will make it visible when it embeds the form.
  • >>should be invisible by default
    Ah, of course
  • Thank you Don & Kevin for the other responses.
Sign In or Register to comment.