Display RadRibbonView Backstage Open by default

5 posts, 1 answers
  1. Ian
    Ian avatar
    1 posts
    Member since:
    Aug 2012

    Posted 22 Aug 2012 Link to this post

    Hi, 

    Im working on a WPF application using the RadRibbonView. Our workflow is such that we would like the BackStage to be displayed open when the app is first launched so the user can choose to create a new project or open an existing one.

    We have set 'IsBackStageOpen' to true in the XAML of the RadRibbonView, and the BackStage is displayed on load. However, it is not possible to interact with it. Clicking on a BackStageItem or anywhere closes the backstage and the users action is lost. Im not able to upload the project, however this is the XAML:

    <Window x:Class="RibbonViewBackstageOpen.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
    Title="MainWindow" Height="350" Width="525">
    <Grid x:Name="RootGrid">
          <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="*" />
          </Grid.RowDefinitions>

    <!-- Backstage defaults to Open -->
          <telerik:RadRibbonView x:Name="ribbonView"
              ApplicationName="TEST" Title="TEST" IsBackstageOpen="True" BackstageClippingElement="{Binding ElementName=RootGrid}">
            <telerik:RadRibbonTab Header="Test">
                    <telerik:RadRibbonGroup Header="Test">
                        <telerik:RadRibbonButton Content="Test" />
                    </telerik:RadRibbonGroup>
                </telerik:RadRibbonTab>
            <telerik:RadRibbonView.Backstage>
              <telerik:RadRibbonBackstage>
              <telerik:RadRibbonBackstageItem Header="Save" IsSelectable="True"/>
              <telerik:RadRibbonBackstageItem Header="Open" IsSelectable="True"/>
              </telerik:RadRibbonBackstage>
            </telerik:RadRibbonView.Backstage>
            </telerik:RadRibbonView>
        </Grid>
    </Window>

    If it is possible, what is the correct way to automatically display the backstage when an application is first run?

    Thanks
    Ian
  2. Answer
    Petar Mladenov
    Admin
    Petar Mladenov avatar
    2992 posts

    Posted 27 Aug 2012 Link to this post

    Hi Ian,

     Indeed, this appears to be a bug in the RadRibbonView. We logged it in our PITS where you can track its status and we also updated your telerik account points as a thanks for your cooperation.

    Greetings,
    Petar Mladenov
    the Telerik team

    Explore the entire Telerik portfolio by downloading Telerik DevCraft Ultimate.

  3. David
    David avatar
    48 posts
    Member since:
    Nov 2008

    Posted 07 Nov in reply to Petar Mladenov Link to this post

    I'm having this same problem. When is it going to be fixed? 
  4. Martin Ivanov
    Admin
    Martin Ivanov avatar
    1451 posts

    Posted 10 Nov Link to this post

    Hello David,

    This is already fixed. Can you try it with the latest version of UI for WPF and let me know if the issue still occurs? If so, I would ask you to open a new support ticket and send a runnable project that reproduces the issue. 

    Regards,
    Martin Ivanov
    Progress Telerik
    Want to extend the target reach of your WPF applications, leveraging iOS, Android, and UWP? Try UI for Xamarin, a suite of polished and feature-rich components for the Xamarin framework, which allow you to write beautiful native mobile apps using a single shared C# codebase.
  5. David
    David avatar
    48 posts
    Member since:
    Nov 2008

    Posted 13 Nov in reply to Martin Ivanov Link to this post

    My WPF application is a separate assembly from the one containing the window. It creates the window, calls Show, and then calls another method which sets the IsBackstageOpen = True.

    I worked-around the problem by running after Show,

    Application.Current.Dispatcher.Invoke(Sub() Exit Sub, priority:=Windows.Threading.DispatcherPriority.Background)

    This gives the UI time to show the window before setting the backstage.

     

Back to Top