SelectionChanged event firing when clicking anything in tab

5 posts, 0 answers
  1. Jerry T.
    Jerry T. avatar
    118 posts
    Member since:
    Jul 2012

    Posted 21 Apr 2011 Link to this post

    I have a RadTabControl with 3 tabs.

    When I click on the 2nd tab, I'm loading a RadPanelBar with multiple RadPanelBarItems, each one containing a RadRichTextBox control.

    Whenever I click on ANYthing on that tab (the RadPanelBarItems...the RadRichTextBox controls...etc.) the RadTabControl's SelectionChanged event (and PreviewSelectionChanged event, too) fires.  This is killing me as I dynamically add some RadPanelBarItems based on content from the 1st tab.

    Why is the SelectionChanged event firing when I'm not even clicking on the RadTabControl?

    Jerry
  2. Jerry T.
    Jerry T. avatar
    118 posts
    Member since:
    Jul 2012

    Posted 25 Apr 2011 Link to this post

    Still wondering....
  3. DevCraft banner
  4. Petar Mladenov
    Admin
    Petar Mladenov avatar
    2891 posts

    Posted 27 Apr 2011 Link to this post

    Hi Jerry T.,

    We are unable to reproduce this at our side. Could you please examine my test project to see if I have missed something or to modify it in order to reproduce the issue? Thank you for your cooperation.

    All the best,
    Petar Mladenov
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  5. Jerry T.
    Jerry T. avatar
    118 posts
    Member since:
    Jul 2012

    Posted 28 Apr 2011 Link to this post

    That test project works ok and I notice you're using the SelectionChanged event with the RoutedEventArgs parameter.

    I once saw that parameter type show up in our code but there are TWO SelectionChanged events that show up in the dropdown in Vis Studio and selecting either one brings up an event with SelectionChangedEventArgs (as does the PreviewSelectionChangedEvent). If I select either SelectionChangedEvent from the dropdown, the first is bolded. If I then try to select the 2nd, I get a duplicate event and the 2nd event name in the dropdown does not show bolded.

    Here is the markup XAML:
    <UserControl x:Class="BTA.Silverlight.MainPage"
        xmlns:local="clr-namespace:BTA.Silverlight"
        mc:Ignorable="d"
        d:DesignHeight="300" d:DesignWidth="400">
      
        <Border Padding="20">
            <Grid x:Name="LayoutRoot">
                <Grid.Effect>
                    <DropShadowEffect Color="Gray" Direction="0" ShadowDepth="0" BlurRadius="20" Opacity="1" />
                </Grid.Effect>
      
                <telerik:RadTabControl x:Name="rtcProposal" Grid.Row="0" HorizontalAlignment="Stretch" DropDownDisplayMode="Visible">
                  
                    <telerik:RadTabItem x:Name="rtiCostingSheet" Header="Costing Sheet" Width="100" Height="30">
                        <telerik:RadTabItem.Content>
      
                            <telerik:RadBusyIndicator x:Name="rbiCostingSheet" BusyContent="Loading costing sheet data...">
                                <telerik:RadGridView x:Name="rgCostingSheet" CanUserFreezeColumns="False" AutoGenerateColumns="False" IsFilteringAllowed="False">
                                    <telerik:RadGridView.Columns>
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding VendorName}" Header="Vendor" Width="150" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding CostingItem}" Header="Costing Item" Width="200" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding UnitCost}" DataFormatString="{}{0:C}" Header="Unit Cost" Width="95" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Units}" Header="Units" Width="45" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Hours}" Header="Hours" Width="45" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Gratuity}" DataFormatString="{}{0:C}" Header="Gratuity" Width="95" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Tax}" DataFormatString="{}{0:0%}" Header="Tax" Width="95" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Taxable}" Header="Tax?" Width="45" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Cost}" DataFormatString="{}{0:C}" Header="Cost" Width="95" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding GrossProfitPercent}" DataFormatString="{}{0:0%}" Header="GP%" Width="45" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding UnitRevenue}" DataFormatString="{}{0:C}" Header="Unit Rev" Width="95" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding PricingOptions}" Header="Pricing" Width="100" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Revenue}" DataFormatString="{}{0:C}" Header="Revenue" Width="95" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding RevenuePerPerson}" DataFormatString="{}{0:C}" Header="Rev PP" Width="95" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Commission}" Header="Comm" Width="100" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding BillType}" Header="Bill Type" Width="75" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Group}" Header="Group" Width="45" HeaderTextAlignment="Right" TextAlignment="Right" />
                                        <telerik:GridViewDataColumn DataMemberBinding="{Binding Sort}" Header="Sort" Width="45" HeaderTextAlignment="Right" TextAlignment="Right" />
                                    </telerik:RadGridView.Columns>
                                </telerik:RadGridView>
                            </telerik:RadBusyIndicator>
                              
                        </telerik:RadTabItem.Content>
                    </telerik:RadTabItem>
      
                    <telerik:RadTabItem x:Name="rtiWriteUp" Header="Write-Up" Width="100" Height="30">
                        <telerik:RadTabItem.Content>
      
                            <telerik:RadBusyIndicator x:Name="rbiWriteUp" IsIndeterminate="False" BusyContent="Importing... 0% Complete">
                                <Grid>
                                    <Grid.RowDefinitions>
                                        <RowDefinition Height="*" />
                                    </Grid.RowDefinitions>
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition Width="*" />
                                        <ColumnDefinition Width="150" />
                                    </Grid.ColumnDefinitions>
      
                                        <telerik:RadPanelBar x:Name="rpbWriteUpSections" Grid.Column="0" Margin="5" ExpandMode="Multiple" IsDragDropEnabled="True" TextDropAfter="Move item after..." TextDropBefore="Move item before..." TextDropRoot="WriteUp - " IsDragPreviewEnabled="True" IsDropPreviewLineEnabled="True" />
                                  
                                        <StackPanel Grid.Column="1" HorizontalAlignment="Stretch">
                                            <telerik:RadButton x:Name="rbImportCostingSheet" Width="130" Content="Import Costing Sheet" Margin="0 5 0 5" Visibility="Collapsed" />
                                            <telerik:RadSplitButton x:Name="rsbAddSection" Width="130" Content="Add Section" Margin="0 5 0 5">
                                                <telerik:RadSplitButton.DropDownContent>
                                                    <ListBox SelectionChanged="rsbAddSection_ListBox_SelectionChanged">
                                                        <ListBoxItem Content="New Empty Section" />
                                                        <ListBoxItem Content="New Section From File" />
                                                        <ListBoxItem Content="New Section From Library" />
                                                    </ListBox>
                                            </telerik:RadSplitButton.DropDownContent>
                                        </telerik:RadSplitButton>
                                        <telerik:RadButton x:Name="rbRemoveSection" Width="130" Content="Remove Section" />
      
                                    </StackPanel>
                                </Grid>
                                      
                            </telerik:RadBusyIndicator>
                          
                        </telerik:RadTabItem.Content>
                    </telerik:RadTabItem>
      
                    <telerik:RadTabItem x:Name="rtiPreview" Header="Preview" Width="100" Height="30">
                        <telerik:RadTabItem.Content>
      
                            <telerik:RadBusyIndicator x:Name="rbiPreview" BusyContent="Generating Preview...">
                                <Grid x:Name="RichTextBoxContainer">
                                    <Grid.RowDefinitions>
                                        <RowDefinition Height="Auto" />
                                        <RowDefinition Height="*" />
                                    </Grid.RowDefinitions>
                                    <Grid.Resources>
                                        <LinearGradientBrush x:Key="DottedLineBrush" StartPoint="0,0.5" EndPoint="4,0.5" MappingMode="Absolute" SpreadMethod="Repeat">
                                            <GradientStop Color="#40000000" Offset="0" />
                                            <GradientStop Color="#40000000" Offset="0.5" />
                                            <GradientStop Color="Transparent" Offset="0.501" />
                                        </LinearGradientBrush>
                                    </Grid.Resources>
      
                                    <telerik:RadRichTextBoxRibbonUI Grid.Row="0" ApplicationName="" ApplicationButtonContent="File" ApplicationButtonType="Office2010" IsMinimized="True" DataContext="{Binding Path=Commands, ElementName=rrtbPreview}" BackstageClippingElement="{Binding ElementName=RichTextBoxContainer}">
                                        <telerik:RadRibbonBar.Backstage>
                                            <telerik:RadRibbonBackstage>
                                                <telerik:RadRibbonBackstageItem Header="Save As" Icon="/Telerik.Windows.Controls.RichTextBoxUI;component/Images/MSOffice/16/save.png" IsSelectable="False" Command="{Binding Path=SaveCommand}" />
                                                <telerik:RadRibbonBackstageItem IsGroupSeparator="True" />
                                                <telerik:RadRibbonBackstageItem Header="Print" Icon="../Images/16/Print.png">
                                                    <StackPanel Margin="15 15 0 0">
                                                        <TextBlock Margin="0 0 0 2" FontSize="12" FontWeight="Bold" Text="Preview and print the document" />
                                                        <Rectangle Height="1" Fill="{StaticResource DottedLineBrush}" />
                                                        <telerik:RadRibbonButton Width="460" Margin="0 3 0 0" CommandParameter="Html" telerik:RadRichTextBoxRibbonUI.RichTextCommand="{Binding Path=PrintCommand}">
                                                            <StackPanel Orientation="Horizontal">
                                                                <Image Source="/Telerik.Windows.Controls.RichTextBoxUI;component/Images/MSOffice/ApplicationMenu/print.png" />
                                                                <StackPanel Margin="3 0 0 0" HorizontalAlignment="Left">
                                                                    <TextBlock Text="Print HTML" Margin="0 0 0 2" FontWeight="Bold" />
                                                                    <TextBlock Text="Select a printer, number of copies before printing." />
                                                                </StackPanel>
                                                            </StackPanel>
                                                        </telerik:RadRibbonButton>
                                                        <telerik:RadRibbonButton Width="460" Margin="0 3 0 0" CommandParameter="Native" telerik:RadRichTextBoxRibbonUI.RichTextCommand="{Binding Path=PrintCommand}">
                                                            <StackPanel Orientation="Horizontal">
                                                                <Image Source="/Telerik.Windows.Controls.RichTextBoxUI;component/Images/MSOffice/ApplicationMenu/pagesetup.png" />
                                                                <StackPanel>
                                                                    <TextBlock FontWeight="Bold" Margin="0 0 0 2" Text="Native Print" />
                                                                    <TextBlock Text="Send the document directly to the default printer without making changes." />
                                                                </StackPanel>
                                                            </StackPanel>
                                                        </telerik:RadRibbonButton>
                                                        <telerik:RadRibbonButton Width="460" Margin="0 3 0 0" CommandParameter="HtmlPreview" telerik:RadRichTextBoxRibbonUI.RichTextCommand="{Binding Path=PrintCommand}">
                                                            <StackPanel Orientation="Horizontal">
                                                                <Image Source="/Telerik.Windows.Controls.RichTextBoxUI;component/Images/MSOffice/ApplicationMenu/print_preview.png" />
                                                                <StackPanel>
                                                                    <TextBlock FontWeight="Bold" Margin="0 0 0 2" Text="Print Preview" />
                                                                    <TextBlock Text="Preview and make changes to pages before printing." />
                                                                </StackPanel>
                                                            </StackPanel>
                                                        </telerik:RadRibbonButton>
                                                    </StackPanel>
                                                </telerik:RadRibbonBackstageItem>
                                                <telerik:RadRibbonBackstageItem Header="Send" Icon="../Images/16/Email.png" IsDefault="True">
                                                    <StackPanel Margin="15 15 0 0">
                                                        <TextBlock Margin="0 0 0 2" FontSize="12" FontWeight="Bold" Text="Send a copy of the document to other people" />
                                                        <Rectangle Height="1" Fill="{StaticResource DottedLineBrush}" />
                                                        <telerik:RadRibbonButton Width="460" Margin="0 3 0 0">
                                                            <StackPanel Orientation="Horizontal">
                                                                <Image Source="../Images/32/EmailWord.png" />
                                                                <StackPanel Margin="3 0 0 0" HorizontalAlignment="Left">
                                                                    <TextBlock Text="E-mail as Word Attachment" Margin="0 0 0 2" FontWeight="Bold" />
                                                                    <TextBlock Text="Send a copy of the document in an e-mail message as a Word attachment." />
                                                                </StackPanel>
                                                            </StackPanel>
                                                        </telerik:RadRibbonButton>
                                                        <telerik:RadRibbonButton Width="460" Margin="0 3 0 0">
                                                            <StackPanel Orientation="Horizontal">
                                                                <Image Source="../Images/32/EmailPdf.png" />
                                                                <StackPanel Margin="3 0 0 0" HorizontalAlignment="Left">
                                                                    <TextBlock Text="E-mail as PDF Attachment" Margin="0 0 0 2" FontWeight="Bold" />
                                                                    <TextBlock Text="Send a copy of the document in an e-mail message as a PDF attachment." />
                                                                </StackPanel>
                                                            </StackPanel>
                                                        </telerik:RadRibbonButton>
                                                        <telerik:RadRibbonButton Width="460" Margin="0 3 0 0">
                                                            <StackPanel Orientation="Horizontal">
                                                                <Image Source="../Images/32/EmailLink.png" />
                                                                <StackPanel Margin="3 0 0 0" HorizontalAlignment="Left">
                                                                    <TextBlock Text="E-mail Link" Margin="0 0 0 2" FontWeight="Bold" />
                                                                    <TextBlock Text="Send a link to the document in an e-mail message." />
                                                                </StackPanel>
                                                            </StackPanel>
                                                        </telerik:RadRibbonButton>
                                                    </StackPanel>
                                                </telerik:RadRibbonBackstageItem>
                                                <telerik:RadRibbonBackstageItem IsGroupSeparator="True" />
                                                <telerik:RadRibbonBackstageItem Header="Finalize" Icon="../Images/16/Check.png" IsSelectable="False" />
                                            </telerik:RadRibbonBackstage>
                                        </telerik:RadRibbonBar.Backstage>
                                    </telerik:RadRichTextBoxRibbonUI>
      
                                    <telerik:RadRichTextBox Grid.Row="1" Name="rrtbPreview" IsReadOnly="True" IsSelectionEnabled="True" />
                                </Grid>
                                      
                            </telerik:RadBusyIndicator>
      
                        </telerik:RadTabItem.Content>
                    </telerik:RadTabItem>
      
                </telerik:RadTabControl>
              
            </Grid>
        </Border>
          
    </UserControl>


    Here is the code-behind:
    Imports Telerik.Windows.Documents
    Imports Telerik.Windows.Documents.Layout
    Imports Telerik.Windows.Documents.Model
    Imports Telerik.Windows.Documents.FormatProviders
    Imports Telerik.Windows.Documents.FormatProviders.Xaml
    Imports System.IO
    Imports System.ComponentModel
      
    Partial Public Class MainPage
        Inherits UserControl
      
        Private WorkerImportCostingSheetSections As New BackgroundWorker()
        Private WorkerPreview As New BackgroundWorker()
      
        Public Sub New()
            Telerik.Windows.Controls.StyleManager.ApplicationTheme = New Telerik.Windows.Controls.Office_SilverTheme
      
            InitializeComponent()
      
            Me.GetCostingSheetData()
      
            AddHandler WorkerImportCostingSheetSections.DoWork, AddressOf Me.DoWorkImportCostingSheetSections
            AddHandler WorkerImportCostingSheetSections.RunWorkerCompleted, AddressOf Me.RunWorkerCompletedCompletedImportCostingSheetSections
      
            AddHandler WorkerPreview.DoWork, AddressOf Me.DoWorkPreview
            AddHandler WorkerPreview.RunWorkerCompleted, AddressOf Me.RunWorkerCompletedPreview
      
        End Sub
      
        Private Sub GetCostingSheetData()
            Dim client = New Services.BTAServiceClient()
      
            AddHandler client.GetCostingSheetsCompleted, Sub(s As Object, e As Services.GetCostingSheetsCompletedEventArgs)
                                                             System.Threading.Thread.Sleep(1000) ' add pause so busy indicator doesn't disappear to fast
                                                             Me.rgCostingSheet.ItemsSource = e.Result
                                                             Me.rbiCostingSheet.IsBusy = False
                                                         End Sub
      
            Me.rbiCostingSheet.IsBusy = True
            client.GetCostingSheetsAsync()
        End Sub
      
        Private Sub rtcProposal_PreviewSelectionChanged(sender As Object, e As Telerik.Windows.Controls.SelectionChangedEventArgs) Handles rtcProposal.PreviewSelectionChanged
      
            Select Case rtcProposal.SelectedIndex
                Case 1
                    If (Not WorkerImportCostingSheetSections.IsBusy) AndAlso (rbImportCostingSheet.IsEnabled) Then
                        rbImportCostingSheet.IsEnabled = False
                        Me.rbiWriteUp.ProgressValue = 0
                        Me.rbiWriteUp.IsBusy = True
                        WorkerImportCostingSheetSections.RunWorkerAsync()
                    End If
                Case 2
                    If Not WorkerPreview.IsBusy Then
                        Me.rbiPreview.ProgressValue = 0
                        Me.rbiPreview.IsBusy = True
                        WorkerPreview.RunWorkerAsync()
                    End If
            End Select
      
        End Sub
      
        Private Function MergeDocuments(ByVal doc1 As RadDocument, ByVal doc2 As RadDocument, ByVal insertPageBreak As Boolean) As RadDocument
            doc1.Selection.SelectAll()
            doc2.Selection.SelectAll()
      
            Dim mergedDocument As New RadDocument()
      
            ' This is required only if the document is not visualized yet;
            ' so if you, for example, are using the document from your preview RadRichTextBox this is not needed
            Me.MeasureAndArrangeInDefaultSize(mergedDocument)
      
            mergedDocument.InsertFragment(doc1.Selection.CopySelectedDocumentElements())
      
            Dim position As New DocumentPosition(mergedDocument)
      
            position.MoveToLastPositionInDocument()
      
            mergedDocument.InsertLineBreak()
            mergedDocument.InsertLineBreak()
      
            mergedDocument.InsertFragment(doc2.Selection.CopySelectedDocumentElements())
      
            MergeDocuments = mergedDocument
      
            doc1.Selection.Clear()
            doc2.Selection.Clear()
        End Function
      
        Private Sub MeasureAndArrangeInDefaultSize(document As RadDocument)
            document.Measure(RadDocument.MAX_DOCUMENT_SIZE)
            document.Arrange(New RectangleF(PointF.Empty, document.DesiredSize))
        End Sub
      
        'Private Function ImportRadDocument(content As String) As RadDocument
        '    Dim provider As New Html.HtmlFormatProvider    'FormatProviders.Xaml.XamlFormatProvider
        '    Dim document As RadDocument
      
        '    Using stream As New MemoryStream()
        '        Dim writer As New StreamWriter(stream)
      
        '        writer.Write(content)
        '        writer.Flush()
        '        stream.Seek(0, SeekOrigin.Begin)
      
        '        document = provider.Import(stream)
        '    End Using
      
        '    Return document
      
        'End Function
      
        Private Sub rsbAddSection_ListBox_SelectionChanged(sender As Object, e As System.Windows.Controls.SelectionChangedEventArgs)
      
            If DirectCast(sender, System.Windows.Controls.ListBox).SelectedIndex <> -1 Then
      
                Me.rsbAddSection.IsOpen = False
      
                Dim Document As RadDocument = Nothing
      
                With DirectCast(sender, System.Windows.Controls.ListBox)
                    Select Case .SelectedIndex
                        Case 0
      
                        Case 1
                            Dim dialog As New OpenFileDialog() With {.Multiselect = False}
      
                            If dialog.ShowDialog() AndAlso dialog.File IsNot Nothing Then
                                Using s As FileStream = dialog.File.OpenRead()
                                    Document = New OpenXml.Docx.DocxFormatProvider().Import(s)
                                End Using
                            Else
                                Exit Sub
                            End If
      
                        Case 2
      
                    End Select
                End With
      
                RadWindow.Prompt(
                    New DialogParameters() With {
                        .Content = "Enter section title",
                        .Closed = New EventHandler(Of WindowClosedEventArgs)(
                            Sub(sender1 As Object, e1 As WindowClosedEventArgs)
                                If e1.DialogResult Then
                                    Dim pbi As New BTA.Silverlight.PanelBarItem() With {.AllowDrop = True}
                                    pbi.HeaderText.Text = e1.PromptResult
      
                                    If Me.rpbWriteUpSections.Items.Count = 0 Then pbi.Margin = New Thickness(0)
      
                                    With DirectCast(sender, System.Windows.Controls.ListBox)
                                        Select Case .SelectedIndex
                                            Case 0
      
                                            Case 1
                                                pbi.RichTextBox.Editor.Document = Document
                                            Case 2
      
                                        End Select
      
                                        rpbWriteUpSections.Items.Add(pbi)
      
                                        .SelectedIndex = -1
                                    End With
                                End If
                            End Sub
                        )
                    }
                )
      
            End If
      
        End Sub
      
        Private Sub rpbWriteUpSections_PreviewDragEnded(sender As Object, e As Telerik.Windows.Controls.RadTreeViewDragEndedEventArgs) Handles rpbWriteUpSections.PreviewDragEnded
            If (e.DropPosition = DropPosition.Inside) Then e.Handled = True
        End Sub
      
        Private Sub DoWorkImportCostingSheetSections(sender As Object, e As DoWorkEventArgs)
      
            Dim ProgressValueIncrement As Double = 100 / Me.rgCostingSheet.Items.Count
      
            Dim Document As RadDocument = Nothing
            Dim vendor As String = String.Empty
            Dim pricingInfo As String = String.Empty
            Dim finalText As String = String.Empty
      
            For Each item In Me.rgCostingSheet.Items.OfType(Of BTA.Silverlight.Services.CostingSheet)()
      
                Me.Dispatcher.BeginInvoke(
                    Sub()
                        If Document Is Nothing Then Document = New RadDocument()
      
                        Me.rbiWriteUp.ProgressValue += ProgressValueIncrement
                        Me.rbiWriteUp.BusyContent = "Importing... " & Me.rbiWriteUp.ProgressValue & "% Complete"
      
                        If (vendor <> String.Empty) AndAlso (vendor <> item.VendorName) Then
                            With Document
                                .Measure(RadDocument.MAX_DOCUMENT_SIZE)
                                .ParagraphDefaultSpacingAfter = 0
      
                                finalText += "<t:TableRow>" + vbCrLf +
                                             "<t:TableCell TextAlignment=""left""><t:Paragraph><t:Span FontFamily=""14"" FontSize=""14"" FontWeight=""Bold"" HighlightColor=""LightGray"" Text=""" + vendor + """></t:Span></t:Paragraph></t:TableCell>" + vbCrLf +
                                             "</t:TableRow>" + vbCrLf +
                                             pricingInfo + vbCrLf +
                                             "<t:TableRow>" + vbCrLf +
                                             "<t:TableCell TextAlignment=""left""><t:Paragraph><t:Span Text="" ""></t:Span></t:Paragraph></t:TableCell>" + vbCrLf +
                                             "</t:TableRow>" + vbCrLf
                                pricingInfo = String.Empty
                            End With
                        End If
      
                        vendor = item.VendorName
                        pricingInfo += "<t:TableRow>" + vbCrLf +
                                       "<t:TableCell TextAlignment=""left""><t:Paragraph><t:Span Text=""" + item.CostingItem + """></t:Span></t:Paragraph></t:TableCell>" + vbCrLf +
                                       "<t:TableCell TextAlignment=""right""><t:Paragraph><t:Span FontFamily=""Arial"" FontSize=""12"" Text=""" + String.Format("{0:C}", item.Cost) + """></t:Span></t:Paragraph></t:TableCell>" + vbCrLf +
                                       "</t:TableRow>" + vbCrLf
                    End Sub)
      
                System.Threading.Thread.Sleep(250)
            Next
      
            Me.Dispatcher.BeginInvoke(
                Sub()
                    finalText += "<t:TableRow>" + vbCrLf +
                                 "<t:TableCell TextAlignment=""left""><t:Paragraph><t:Span FontFamily=""14"" FontSize=""14"" FontWeight=""Bold"" HighlightColor=""LightGray"" Text=""" + vendor + """></t:Span></t:Paragraph></t:TableCell>" + vbCrLf +
                                 "</t:TableRow>" + vbCrLf +
                                 pricingInfo
      
                    Me.rpbWriteUpSections.Items.Clear()
      
                    Dim pbi As New BTA.Silverlight.PanelBarItem() With {.IsExpanded = False}
                    pbi.HeaderText.Text = "Overview"
                    Me.rpbWriteUpSections.Items.Add(pbi)
      
                    pbi = New BTA.Silverlight.PanelBarItem() With {.IsExpanded = False}
                    pbi.HeaderText.Text = "Itinerary 1"
                    Me.rpbWriteUpSections.Items.Add(pbi)
      
                    pbi = New BTA.Silverlight.PanelBarItem() With {.IsExpanded = False}
                    pbi.HeaderText.Text = "Detail"
                    Me.rpbWriteUpSections.Items.Add(pbi)
      
                    Dim pbiPricing = New BTA.Silverlight.PanelBarItem() With {.IsExpanded = True}
                    pbiPricing.HeaderText.Text = "Pricing Info"
                    finalText = "<t:RadDocument xmlns=""http://schemas.microsoft.com/winfx/2006/xaml/presentation"" xmlns:t=""clr-namespace:Telerik.Windows.Documents.Model;assembly=Telerik.Windows.Documents"" DefaultPageLayoutSettings=""793,1123"" LayoutMode=""Paged"" PageViewMargin=""10,10"" ParagraphDefaultSpacingAfter=""0"" SectionDefaultPageMargin=""95,95,95,95"">" + vbCrLf +
                                "<t:Section><t:Table Borders=""1,Single,#FFFFFFFF"">" + vbCrLf +
                                finalText +
                                "</t:Table></t:Section></t:RadDocument>"
      
                    pbiPricing.RichTextBox.Editor.Document = New XamlFormatProvider().Import(finalText)
                    Me.rpbWriteUpSections.Items.Add(pbiPricing)
                End Sub)
      
        End Sub
      
        Private Sub RunWorkerCompletedCompletedImportCostingSheetSections(sender As Object, e As RunWorkerCompletedEventArgs)
            Me.Dispatcher.BeginInvoke(Sub() Me.rbiWriteUp.IsBusy = False)
        End Sub
      
        Private Sub DoWorkPreview(sender As Object, e As DoWorkEventArgs)
      
            Me.Dispatcher.BeginInvoke(
                Sub()
                    Dim newDoc As New RadDocument()
      
                    For Each pbi As PanelBarItem In Me.rpbWriteUpSections.Items
                        newDoc = MergeDocuments(newDoc, pbi.RichTextBox.Editor.Document, (pbi.Index > 0))
                    Next
      
                    Me.rrtbPreview.LayoutMode = DocumentLayoutMode.Paged
                    Me.rrtbPreview.Document = newDoc
                    Me.rrtbPreview.IsSpellCheckingEnabled = False
                End Sub)
      
            System.Threading.Thread.Sleep(1000)
      
        End Sub
      
        Private Sub RunWorkerCompletedPreview(sender As Object, e As RunWorkerCompletedEventArgs)
            Me.Dispatcher.BeginInvoke(Sub() Me.rbiPreview.IsBusy = False)
        End Sub
      
        Private Sub rtcProposal_SelectionChanged(sender As Object, e As Telerik.Windows.Controls.SelectionChangedEventArgs) Handles rtcProposal.SelectionChanged
      
        End Sub
      
        Private Sub rtcProposal_SelectionChanged1(sender As Object, e As Telerik.Windows.Controls.SelectionChangedEventArgs) Handles rtcProposal.SelectionChanged
      
        End Sub
    End Class
  6. Tina Stancheva
    Admin
    Tina Stancheva avatar
    3298 posts

    Posted 03 May 2011 Link to this post

    Hi Jerry T.,

    Unfortunately I couldn't reproduce your issue from the code snippet you sent and this is why I wanted to ask you to please open a support ticket and send us a small working sample application reproducing your issue so that we can further investigate the cause for it. Also, can you please tell us the version of the controls you are using in your application? There were some issues with the SelectionChanged events in the official release that are fixed in the Q1 2011 SP1 release so it might be related to them.

    We appreciate your help and further information. Thank you in advance.

    All the best,
    Tina Stancheva
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
Back to Top
DevCraft banner