Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
4970
XamGrid not working propertly in Modal popup with SL 5.
posted

I migrated an SL 4 app to SL 5 app and migrated Infrigistics product to 2012. then something wrong with XamGrid. it is working fine in SL 4 with Infrigistics product to 2011.

Here is my case:

 A XamGrid with double clicked event to choose the selected row.

In SL 5, the popup with XamGrid has some problems:

1. Extremely slowly and the app looks like frozen

2. No response for click/double click on the XamGrid.

Here is my pseudo code:

 XamDialogWindow XDW = new XamDialogWindow() {IsModal=true};
 XDW.Content = new SearchLookUp();    //SearchLookUp include a XamGrid which load data from DB with wcf ria service
 ((Canvas)this.FindName("PopupBase")).Children.Add(XDW);
 XDW.ShowAndFocus();     

 

here is xaml for usercontrol SearchLookUp:


    <Grid x:Name="LayoutRoot" Background="White" VerticalAlignment="Stretch"  HorizontalAlignment="Left">
    <controlsToolkit:BusyIndicator HorizontalAlignment="Center" VerticalAlignment="Center" x:Name="busyIndicator" IsBusy="{Binding IsBusy}">
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="*" MinHeight="400" />
                    <RowDefinition Height="Auto" />
                </Grid.RowDefinitions>
                <view:SearchEngagerAdvance Grid.Row="0" x:Name="SearchEngagerAdvanceV" HorizontalAlignment="Stretch" DataContext="{Binding Filter,Mode=TwoWay}"/>
                <ig:XamGrid Grid.Row="1"
                          ItemsSource="{Binding DataList,Mode=TwoWay}"
                          RowSelectorClicked="xamGrid_RowSelectorClicked"
                          CellDoubleClicked="grdEngager_CellDoubleClicked"
              HorizontalAlignment="Stretch"
              VerticalAlignment="Stretch"
              AutoGenerateColumns="False" >
  <ig:XamGrid.RowSelectorSettings>
        <ig:RowSelectorSettings x:Name="rowSelectorSettings" Visibility="Visible" />
    </ig:XamGrid.RowSelectorSettings>
    <ig:XamGrid.FilteringSettings>
        <ig:FilteringSettings AllowFiltering="FilterRowTop" IsMouseActionEditingEnabled="SingleClick" />
    </ig:XamGrid.FilteringSettings>
    <ig:XamGrid.PagerSettings>
        <ig:PagerSettings AllowPaging="top"  Style="{StaticResource AmsPager}" />
    </ig:XamGrid.PagerSettings>
    <ig:XamGrid.ClipboardSettings>
        <ig:ClipboardSettings AllowCopy="True" AllowPaste="True"/>
    </ig:XamGrid.ClipboardSettings>
    <ig:XamGrid.SortingSettings>
        <ig:SortingSettings AllowMultipleColumnSorting="True" />
    </ig:XamGrid.SortingSettings>
    <ig:XamGrid.ColumnMovingSettings>
        <ig:ColumnMovingSettings AllowColumnMoving="Indicator"/>
    </ig:XamGrid.ColumnMovingSettings>
    <ig:XamGrid.SelectionSettings>
        <ig:SelectionSettings CellSelection="Multiple" ColumnSelection="Multiple" RowSelection="Multiple" CellClickAction="SelectRow" />
    </ig:XamGrid.SelectionSettings>
    <ig:XamGrid.ColumnChooserSettings>
        <ig:ColumnChooserSettings AllowHideColumnIcon="True" AllowHiddenColumnIndicator="True"></ig:ColumnChooserSettings>
    </ig:XamGrid.ColumnChooserSettings>
    <ig:XamGrid.ColumnResizingSettings>
        <ig:ColumnResizingSettings AllowColumnResizing="Indicator" AllowMultipleColumnResize="True" AllowCellAreaResizing="True" AllowDoubleClickToSize="True" />
    </ig:XamGrid.ColumnResizingSettings>
    <ig:XamGrid.ConditionalFormattingSettings>
        <ig:ConditionalFormattingSettings AllowConditionalFormatting="True" />
    </ig:XamGrid.ConditionalFormattingSettings>                     
                    <ig:XamGrid.Columns>
                    ......
                    </ig:XamGrid.Columns>
                </AMSCommon:AMSXamGridControl>
            </Grid>
        </controlsToolkit:BusyIndicator>
    </Grid>

How to resolve this problem?

Parents
No Data
Reply
  • 12875
    Suggested Answer
    posted

    Hi,

     

    I built a small sample based on the code you provided using SL4 2011.2, pointing to Silverlight 4 and  added Debug writeline statements to the two events, xamGrid_RowSelectorClicked and grdEngager_CellDoubleClicked. 

     

    After running the app for the purposes of comparison, I upgraded the app to Silverlight 5 and used our product release version 2012.1 Version Utility and upgraded the solution.

     

    The event both seem to fire appropriately with 2011.2 and 2012.1.

     

    A couple of variations from your description are that I did not implement RIA services for the data.  And I am also not aware of the ShowAndFocus method for the xamDialogWindow     I don’t have the AmsPager style that you reference in the xaml or the SearchEngagerAdvanceV view or the busyIndicator. 

     

    You’ll also see that after providing my own datasource I tried to see the difference between allowing AutoGenerateColumns set to true and to false, but I could  not detect any difference in the samples.  I used the Visual Studio Performance Wizard to compare the two versions compiled with the separate product version but saw no difference.

     

    I am to attaching my sample 2012.1 version. 

     

    If you can modify my sample to make it more like your application, I can retest and see if I can duplicate the behavior.    Also if you could please let me know what specific version of 2011.2 and 2012.1 you were using.

    SL_xamGrid_migrate 121.zip
Children