Edit this page

Events

RadBook exposes the following events:

  • FoldActivated - raised when the user hovers the fold with the mouse.

  • FoldDeactivated - raised when the fold is not active - e.g. the user is not over it.

  • PageChanged - raised when the page set is changed.

  • PageFlipStarted - raised when user starts to flip a page.

  • PreviewPageFlipStarted - raised when user starts to flip a page. Allows the developer to cancel the page flip.

  • PageFlipEnded - raised when the flip is finished. This happen when the page is changed, or user canceled the flip.

Please find below and example of how to use those events:

Example 1: Subscribing to the RadBook events

<Grid x:Name="LayoutRoot" Background="Purple">
    <telerik:RadBook x:Name="RadBook1" 
                        Margin="50"
                        FoldActivated="RadBook_FoldActivated"
                        FoldDeactivated="RadBook1_FoldDeactivated"
                        FoldSize="150,150"
                        PageChanged="RadBook1_PageChanged"
                        PageFlipEnded="RadBook1_PageFlipEnded"
                        PageFlipStarted="RadBook1_PageFlipStarted"
                        PreviewPageFlipStarted="RadBook1_PreviewPageFlipStarted">
        <telerik:RadBookItem Background="Red">
            <StackPanel>
                <TextBlock FontSize="36" Text="Page 1" />
                <Button Content="Click Me" />
            </StackPanel>
        </telerik:RadBookItem>
        <telerik:RadBookItem Background="BlueViolet">
            <StackPanel>
                <TextBlock HorizontalAlignment="Right" 
                            FontSize="36"
                            Text="Page 2" />
                <Image Width="320" 
                        Height="240"
                        Source="Koala.jpg" />
            </StackPanel>
        </telerik:RadBookItem>
        <telerik:RadBookItem Background="RosyBrown">
            <TextBlock FontSize="36" Text="Page 3" />
        </telerik:RadBookItem>
        <telerik:RadBookItem Background="Chocolate">
            <TextBlock HorizontalAlignment="Right" 
                        FontSize="36"
                        Text="Page 4" />
        </telerik:RadBookItem>
    </telerik:RadBook>
</Grid>

Example 2: Adding event handlers

public partial class MainPage : UserControl
{
    public MainPage()
    {
        InitializeComponent();
    }
    private void RadBook_FoldActivated(object sender, Telerik.Windows.Controls.FoldEventArgs e)
    {
        FoldPosition position = e.Position;
    }
    private void RadBook1_FoldDeactivated(object sender, Telerik.Windows.Controls.FoldEventArgs e)
    {
    }
    private void RadBook1_PageChanged(object sender, Telerik.Windows.RadRoutedEventArgs e)
    {
        int currentPage = RadBook1.RightPageIndex;
    }
    private void RadBook1_PageFlipEnded(object sender, Telerik.Windows.Controls.PageFlipEventArgs e)
    {
        RadBookItem flippedPage = e.Page;
    }
    private void RadBook1_PageFlipStarted(object sender, Telerik.Windows.Controls.PageFlipEventArgs e)
    {
        RadBookItem flippedPage = e.Page;
    }
    private void RadBook1_PreviewPageFlipStarted(object sender, Telerik.Windows.Controls.PageFlipEventArgs e)
    {
        RadBookItem flippedPage = e.Page;
        e.Handled = true;//if the page flip should stop
    }
}
Partial Public Class MainPage
    Inherits UserControl
    Public Sub New()
        InitializeComponent()
    End Sub
    Private Sub RadBook_FoldActivated(ByVal sender As Object, ByVal e As Telerik.Windows.Controls.FoldEventArgs)
        Dim position As FoldPosition = e.Position
    End Sub
    Private Sub RadBook1_FoldDeactivated(ByVal sender As Object, ByVal e As Telerik.Windows.Controls.FoldEventArgs)
    End Sub
    Private Sub RadBook1_PageChanged(ByVal sender As Object, ByVal e As Telerik.Windows.RadRoutedEventArgs)
        Dim currentPage As Integer = RadBook1.RightPageIndex
    End Sub
    Private Sub RadBook1_PageFlipEnded(ByVal sender As Object, ByVal e As Telerik.Windows.Controls.PageFlipEventArgs)
        Dim flippedPage As RadBookItem = e.Page
    End Sub
    Private Sub RadBook1_PageFlipStarted(ByVal sender As Object, ByVal e As Telerik.Windows.Controls.PageFlipEventArgs)
        Dim flippedPage As RadBookItem = e.Page
    End Sub
    Private Sub RadBook1_PreviewPageFlipStarted(ByVal sender As Object, ByVal e As Telerik.Windows.Controls.PageFlipEventArgs)
        Dim flippedPage As RadBookItem = e.Page
        e.Handled = True 'if the page flip should stop '
    End Sub
End Class