RadMenu MdiList

14 posts, 1 answers
  1. Steve
    Steve avatar
    10 posts
    Member since:
    Nov 2010

    Posted 18 Nov 2010 Link to this post

    Hi

    I have a shaped form and set a menu item called 'Window' with .MDIList property = TRUE so that it shows a list of all child forms currently open within the MDI.

    However, the menu is showing the form Name e.g. "frmPerson" and not the text in the forms Title bar so if we have multiple instance of "frmPerson" open within the MDI it shows "frmPerson" multiple times in the menu and not what is contained in the forms title bar which identifies the individual forms e.g "Person - Joe Bloggs"

    The forms .Text name property is set to the details I would expect to see in the MDIList under Window but it appears to use the .Text value that is set on the form at design time?

    Any idea how I can change this?

    Many Thanks
    Steve
  2. Richard Slade
    Richard Slade avatar
    3000 posts
    Member since:
    May 2009

    Posted 18 Nov 2010 Link to this post

    Hello Steve,

    What version of the controls are you running? I've just tried this on the latest Q3 version and it showed the Form's text property in the menu (as per this link)

    Regards,

    Richard
  3. UI for WinForms is Visual Studio 2017 Ready
  4. Steve
    Steve avatar
    10 posts
    Member since:
    Nov 2010

    Posted 18 Nov 2010 Link to this post

    Thanks Richard

    Can't check right now but I think it might be 2009 Q2 version but will confirm.

    Did it show the Text peoperty of the form if it had been changed before showing the form or did it show the text property set at design time? As this is the problem I have, it always shows the design time form text and not what it was changed to before showing the form.

    Many Thanks
    Steve
  5. Richard Slade
    Richard Slade avatar
    3000 posts
    Member since:
    May 2009

    Posted 18 Nov 2010 Link to this post

    Hi,

    There are many enhancements and changes in the new version and I'd have a look at upgrading. You could download the trial and try upgrading your project. the trial is available here.

    The MDIList showed in the menu the text of the forms that I had as MDI Children, not the form name.
    Hope that helps
    Richard
  6. Steve
    Steve avatar
    10 posts
    Member since:
    Nov 2010

    Posted 18 Nov 2010 Link to this post

    Thanks, will look at upgrading or trying the demo version although I really don't want to upgrade the whole project unless we have to atm as it's huge!

    The version we have seems to just put whatever is in the Form.Text property (e.g "Person Form") at design time into the mdi list and not what the Form.Text property is set to at runtime with something like Me.Text = "Joe Blogs" and another instance with say Me.Text = "John Smith" before the .Show is called.

    The mdilist would show "Person Form" twice instead of "Joe Bloggs" and "John Smith"

    So had you changed the .Text property in code before showing the form and the menu listed the changed text that appears in the forms title bar?

    Thanks again
    Steve
  7. Richard Slade
    Richard Slade avatar
    3000 posts
    Member since:
    May 2009

    Posted 18 Nov 2010 Link to this post

    Hi Steve,

    I only tried setting the text in the designer and running it which showed correctly, but I'll try that out for you first thing in the morning and let you know the result, or if it needs one a workaround if I can find one for you.

    Best regards,
    Richard
  8. Richard Slade
    Richard Slade avatar
    3000 posts
    Member since:
    May 2009

    Posted 19 Nov 2010 Link to this post

    Hi Steve,

    Here is what I did. I added a form that was the MDI Child, and in the designer I gave it a text of "Design time". I then changed the text in the form load event to "Changed" and this is the text that I saw in the MDI List menu. I also changed the text to "Changed" in the FormShown event of the MDI Child and it worked correctly there too.

    I hope this helps
    Richard
  9. Steve
    Steve avatar
    10 posts
    Member since:
    Nov 2010

    Posted 19 Nov 2010 Link to this post

    Hi Richard

    Many thanks, exactly what I needed to know, looks like we might have to upgrade!

    Much apprieciated!

    Cheers
    Steve
  10. Richard Slade
    Richard Slade avatar
    3000 posts
    Member since:
    May 2009

    Posted 19 Nov 2010 Link to this post

    No problem. May I ask you to mark any suggestions that you found helpful as answer so others can find the solution too.

    Many thanks
    Richard
  11. Answer
    Richard Slade
    Richard Slade avatar
    3000 posts
    Member since:
    May 2009

    Posted 19 Nov 2010 Link to this post

    Hi again Steve,

    I just thought I'd add a screenshot and show the code so you knw for sure this is working in Q3 the way you want.

    Main Form
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim form1 As New RadForm1()
        form1.MdiParent = Me
        form1.Show()
        Dim form2 As New RadForm2()
        form2.MdiParent = Me
        form2.Show()
    End Sub

    RadForm 2 Shown (MDI Child)
    Private Sub RadForm2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Text = "Another Form"
    End Sub

    RadForm1 Shown (MDI Child)
    Private Sub RadForm1_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown
        Me.Text = "Some Name"
    End Sub

    See screenshot

    Best regards,
    Richard
  12. Steve
    Steve avatar
    10 posts
    Member since:
    Nov 2010

    Posted 19 Nov 2010 Link to this post

    Superb Richard!

    Thats exactly what I needed.  I'm going to try the code as you have it in my version to prove that it isn't something else going on in the way we open the forms etc and take it from there.

    Many Thanks again
    Steve
  13. Richard Slade
    Richard Slade avatar
    3000 posts
    Member since:
    May 2009

    Posted 19 Nov 2010 Link to this post

    Glad that was useful. Please remember to mark as answer.
    Let me know if there's anything else you need.
    Thanks
    Richard
  14. Steve
    Steve avatar
    10 posts
    Member since:
    Nov 2010

    Posted 22 Nov 2010 Link to this post

    Hi Richard

    It all seems to work for our project on a demo of the latest version as you suggested however that has flagged up some other seperate issues.

    I tried your simple example on our current version and that too did not work and showed the design time form.Text value

    We have decided for the time being to implement our own 'Window' menu functionality but thanks for all your input as it has allowed us to decide which route to take at the moment.

    Many Thanks
    Steve
  15. Richard Slade
    Richard Slade avatar
    3000 posts
    Member since:
    May 2009

    Posted 22 Nov 2010 Link to this post

    Hi Steve,

    I'm glad that the example I gave has worked on the latest version, but sorry to hear that there are some other issues that you have with the latest version.

    I know that there will soon be a service pack released for the Q3 edition, and there is already an internal build that has fixed some issues that were flagged as high priority in the Q3 release.

    If there's something I can do to help you with these Q3 issues that you have, then let me know, or open a new post in the appropriate area. The forums are pretty well covered and you should get a fairly quick response.

    Hope that helps
    Richard
Back to Top
UI for WinForms is Visual Studio 2017 Ready