Layout Save/Load does not work in Q1 2009

16 posts, 0 answers
  1. Phil
    Phil avatar
    9 posts
    Member since:
    Sep 2012

    Posted 16 Mar 2009 Link to this post

    I previously had Q3 2008 installed updated to Q1 2009 and now the save/load layout do not work. Actually the save works and creates the layout file but the load has no effect. Work fine before the update. Also noticed the demo only has a Save button, no Load button....

     

    Can someone confirm that the load layout is broken or if I need to keep diggin..

  2. Phil
    Phil avatar
    9 posts
    Member since:
    Sep 2012

    Posted 16 Mar 2009 Link to this post

    After further investigation, its the column ordering that is not working.

    For example if I have original order #, Date, Time  and re-order the columns to #, Time, Date, save the layout, close the form, open the form and load the layout,  the order is the same as the original #, Date, Time.  I looked a the layout.xml file and the order in the file is #, Time, Date.

  3. UI for WinForms is Visual Studio 2017 Ready
  4. Nick
    Admin
    Nick avatar
    767 posts

    Posted 19 Mar 2009 Link to this post

    Hi Phil,

    Thank you for reporting this issue. We are aware of it and we will address it as soon as possible. I have updated your Telerik points for bringing this matter to our attention. Do not hesitate to write me back if you have further questions.

    Regards,
    Nick
    the Telerik team


    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
  5. runningnet
    runningnet avatar
    20 posts
    Member since:
    Oct 2006

    Posted 25 Mar 2009 Link to this post

    I also have reproduced this problem.  Is there a fix yet?

    Dave
  6. Nick
    Admin
    Nick avatar
    767 posts

    Posted 30 Mar 2009 Link to this post

    Hi runningnet,

    Thank you for contacting us. The issue is addressed for Q1 2009 SP1 which is expected within a month. The same applies to Load button in our Demo application.

    Sincerely yours,
    Nick
    the Telerik team

    Check out Telerik Trainer , the state of the art learning tool for Telerik products.
  7. Ben
    Ben avatar
    28 posts
    Member since:
    Dec 2007

    Posted 07 Apr 2009 Link to this post

    Hi - I too have noticed something a bit odd when loading layouts. If a user *groups* a colum in a grid and saves the layout, when the layout is loaded the grouping isn't visible - however right-clicking on the column shows the 'Ungroup' option. I.e. the grid seems to think the column is grouped but it is not being displayed as such.

    Is this related to the issue reported by the original poster - or is this something else?
  8. Nick
    Admin
    Nick avatar
    767 posts

    Posted 08 Apr 2009 Link to this post

    Hi Ben,

    Thank you for your question; that is something else and I cannot reproduce it. Can you send us the steps you need to perform in our Demo Application --> Grid --> Save/Load Layout example? Thank you very much in advance.

    Sincerely yours,
    Nick
    the Telerik team

    Check out Telerik Trainer , the state of the art learning tool for Telerik products.
  9. Ben
    Ben avatar
    28 posts
    Member since:
    Dec 2007

    Posted 13 Apr 2009 Link to this post

    Sorry for the delay in replying - I was pulled off that task and onto another temporarily.

    I have had a look at the demo load/save grid layout application and after fixing the "Load" button (i.e. making it visible) I was able to get the grid to save and load column groupings without any problems.

    Here is the XML layout code generated by the demo..

    <RadGridView Text="radGridView1" GroupExpandAnimationType="Slide" ThemeName="Breeze" BackColor="236, 251, 254" Cursor="Arrow" ForeColor="Black" Name="radGridView1" TabIndex="1"
        <MasterGridViewTemplate Caption="" ShowGroupedColumns="True" AllowAddNewRow="False" EnableFiltering="True" AutoExpandGroups="True" AutoGenerateColumns="False"
            <SummaryRowGroupHeaders> 
                <Telerik.WinControls.UI.GridViewSummaryRowItem> 
                    <Telerik.WinControls.UI.GridViewSummaryItem Aggregate="First" FieldName="City" FormatString="City: {0};" /> 
                </Telerik.WinControls.UI.GridViewSummaryRowItem> 
            </SummaryRowGroupHeaders> 
            <GroupByExpressions> 
                <Telerik.WinControls.UI.GridGroupByExpression> 
                    <SelectFields> 
                        <Telerik.WinControls.UI.GridGroupByField HeaderText="City" FieldName="City" FieldAlias="City" /> 
                    </SelectFields> 
                    <GroupByFields> 
                        <Telerik.WinControls.UI.GridGroupByField HeaderText="City" FieldName="City" FieldAlias="City" /> 
                    </GroupByFields> 
                </Telerik.WinControls.UI.GridGroupByExpression> 
            </GroupByExpressions> 
            <Columns> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="CustomerID" FieldAlias="CustomerID" UniqueName="CustomerID" VisibleInColumnChooser="False" Width="241" HeaderText="CustomerID" HeaderTextAlignment="MiddleLeft" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="CompanyName" FieldAlias="CompanyName" AllowGroup="False" UniqueName="CompanyName" Width="289" HeaderText="CompanyName" HeaderTextAlignment="MiddleLeft" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="Country" FieldAlias="Country" UniqueName="Country" Width="241" HeaderText="Country" HeaderTextAlignment="MiddleLeft" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="City" FieldAlias="City" SortOrder="Ascending" UniqueName="City" Width="241" HeaderText="City" HeaderTextAlignment="MiddleLeft" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="ContactName" FieldAlias="ContactName" UniqueName="ContactName" Width="289" HeaderText="ContactName" HeaderTextAlignment="MiddleLeft" /> 
            </Columns> 
        </MasterGridViewTemplate> 
        <RootElement ForeColor="Black" /> 
    </RadGridView> 
     
     

    And here is the XML code generated for my grid (obviously with different columns). Is there anything in there that you can see that would be stopping the grouping from being restored when I call LoadLayout()?

    <RadGridView ReadOnly="True" ShowGroupPanel="False" EnableHotTracking="False" ThemeName="TradeFlowTheme" BackColor="ControlDark" Cursor="Default" Font="Tahoma, 8.25pt" ForeColor="ControlText" Name="grPositions" RightToLeft="No" TabIndex="2" ImeMode="NoControl"
        <MasterGridViewTemplate AllowRowResize="False" AllowCellContextMenu="False" ShowGroupedColumns="True" ShowRowHeaderColumn="False" ShowFilteringRow="False" AllowAddNewRow="False" AllowEditRow="False" AllowDeleteRow="False"
            <SummaryRowGroupHeaders> 
                <Telerik.WinControls.UI.GridViewSummaryRowItem> 
                    <Telerik.WinControls.UI.GridViewSummaryItem Aggregate="First" FieldName="PosSide" FormatString="Direction: {0};" /> 
                </Telerik.WinControls.UI.GridViewSummaryRowItem> 
            </SummaryRowGroupHeaders> 
            <GroupByExpressions> 
                <Telerik.WinControls.UI.GridGroupByExpression> 
                    <SelectFields> 
                        <Telerik.WinControls.UI.GridGroupByField HeaderText="Direction" FieldName="PosSide" FieldAlias="Direction" /> 
                    </SelectFields> 
                    <GroupByFields> 
                        <Telerik.WinControls.UI.GridGroupByField HeaderText="Direction" FieldName="PosSide" FieldAlias="Direction" /> 
                    </GroupByFields> 
                </Telerik.WinControls.UI.GridGroupByExpression> 
            </GroupByExpressions> 
            <Columns> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="Instrument.InsName" FieldAlias="Instrument.InsName" SortOrder="Ascending" UniqueName="Instrument.InsName" Width="168" HeaderText="Name" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="Instrument.InsBloombergId" FieldAlias="Instrument.InsBloombergId" UniqueName="Instrument.InsBloombergId" Width="77" HeaderText="Id" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="Instrument.Currency.CurIsoCd" FieldAlias="Instrument.Currency.CurIsoCd" UniqueName="Instrument.Currency.CurIsoCd" HeaderText="Ccy" IsVisible="False" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="PosSide" FieldAlias="PosSide" SortOrder="Ascending" UniqueName="PosSide" Width="51" HeaderText="Direction" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="Quantity" FieldAlias="Quantity" UniqueName="Quantity" Width="49" HeaderText="Quantity" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="Pending" FieldAlias="Pending" UniqueName="Pending" Width="46" HeaderText="Pending" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="Cost" FieldAlias="Cost" UniqueName="Cost" Width="49" HeaderText="Cost" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="Stop" FieldAlias="Stop" UniqueName="Stop" Width="61" HeaderText="Trade Stop" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="ClosedPnL" FieldAlias="ClosedPnL" UniqueName="ClosedPnL" Width="59" HeaderText="Profit/Loss" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="T1Price" FieldAlias="T1Price" UniqueName="T1Price" Width="51" HeaderText="T1 Price" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="T1Qty" FieldAlias="T1Qty" UniqueName="T1Qty" Width="40" HeaderText="T1 Qty" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="T2Price" FieldAlias="T2Price" UniqueName="T2Price" Width="47" HeaderText="T2 Price" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="T2Qty" FieldAlias="T2Qty" UniqueName="T2Qty" Width="40" HeaderText="T2 Qty" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="T3Price" FieldAlias="T3Price" UniqueName="T3Price" Width="47" HeaderText="T3 Price" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="T3Qty" FieldAlias="T3Qty" UniqueName="T3Qty" HeaderText="T3 Qty" IsVisible="False" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="T4Price" FieldAlias="T4Price" UniqueName="T4Price" Width="47" HeaderText="T4 Price" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="T4Qty" FieldAlias="T4Qty" UniqueName="T4Qty" HeaderText="T4 Qty" IsVisible="False" TextAlignment="MiddleRight" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="LastTrade" FieldAlias="LastTrade" UniqueName="LastTrade" Width="117" HeaderText="Last Trade" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="HasPending" FieldAlias="HasPending" UniqueName="HasPending" VisibleInColumnChooser="False" HeaderText="Has Pending" IsVisible="False" /> 
                <Telerik.WinControls.UI.GridViewTextBoxColumn FieldName="HasAlert" FieldAlias="HasAlert" UniqueName="HasAlert" VisibleInColumnChooser="False" HeaderText="Has Alert" IsVisible="False" /> 
            </Columns> 
        </MasterGridViewTemplate> 
    </RadGridView> 
     
     

    Any help would be greatly appreciated!

    Regards,
    Ben
  10. Ben
    Ben avatar
    28 posts
    Member since:
    Dec 2007

    Posted 14 Apr 2009 Link to this post

    Hi Nick,

    Thanks for your response. I am sorry but I obviously didn't make myself all that clear. I do want to save and re-load the grid groupings. This works in the demo but not in my app and I was wondering if there is some grid property that I have set that is preventing this from working. In my previous post you can see exactly what is getting saved for my grid layout - is there anything in there that would preclude the column groupings from loading correctly?

    Thanks again,
    Ben
  11. Nick
    Admin
    Nick avatar
    767 posts

    Posted 15 Apr 2009 Link to this post

    Hello Ben,

    Thank you for contacting us. You can do the reverse - instead of trying to skip the loading of the grouping you can avoid its saving; you need the following code to prevent the grouping from being saved in the xml file:

     
    string fileName = "layout.xml";  
                SaveFileDialog dialog = new SaveFileDialog();  
                dialog.Filter =  
                   "xml files (*.xml)|*.xml|All files (*.*)|*.*";  
                dialog.Title = "Select a xml file";  
                if (dialog.ShowDialog() == DialogResult.OK)  
                {  
                    fileName = dialog.FileName;  
                }  
     
     
               grid.XmlSerializationInfo.SerializationMetadata.Add( 
                        typeof(DataAccessComponent), 
                        "GroupByExpressions"
                        DesignerSerializationVisibilityAttribute.Hidden 
                        ); 
     
    grid.SaveLayout(fileName);    

    The code above excludes grouping from serialization by adding it to the SerializationMetadata collection. I hope this helps.

    Please note that currently we cannot provide the functionality of preventing loading if grouping has been serialized. In other words, you can control serialization process but you cannot control the deserialization process.

    Do not hesitate to write me back if you have further questions.

    Greetings,
    Nick
    the Telerik team

    Check out Telerik Trainer , the state of the art learning tool for Telerik products.
  12. Ben
    Ben avatar
    28 posts
    Member since:
    Dec 2007

    Posted 15 Apr 2009 Link to this post

    Hi Nick,

    I understand what you are saying about preventing the grouping from being saved by altering the serialisation metadata, however I actually do want the grouping to be saved, and subsequently reloaded. 

    This works in the demo application - if you group a column and save the layout, and then reload, the grouping is restored. I want this to work in my application - I don't want to ignore any column groupings when saving the layout.

    Therefore I was hoping you could see if there are some grid properties I have configured (from my layout XML I attached in an earlier post) that maybe preventing the grouping (which is being successfully saved) from being restored. Or if there is any other reason why the column groupings are not being restored.

    I am pretty sure this used to work in the previous version of the GridView (i.e. Q3 2008) - in fact I am almost certain I tried this and it was functioning as expected. I recently upgraded to Q1 2009 and I believe it is since this upgrade that it no longer works - although I cannot be 100% certain.

    Sorry for the confusion!

    Regards,
    Ben
  13. Nick
    Admin
    Nick avatar
    767 posts

    Posted 17 Apr 2009 Link to this post

    Hello Ben,

    Sorry for the misunderstanding. Please send us a sample application demonstrating a scenario where grouping is not properly persisted. In general, the save functionality works as follows: everything is persisted excluding certain properties for which it is undesirable to be persisted. There could be some issues we are not aware of and we will be happy to investigate and address them. Please note that you need to start a new support ticket so that you can attach files.

    All the best,
    Nick
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
  14. Dragoljub
    Dragoljub avatar
    26 posts
    Member since:
    Feb 2008

    Posted 20 Apr 2009 Link to this post

    I also noticed it in some way.
    The command grid.Columns.Insert(index, column) seems to ignore the index parameter, and adds the column at the end.
  15. Nick
    Admin
    Nick avatar
    767 posts

    Posted 22 Apr 2009 Link to this post

    Hi Dragoljub,

    Thank you for feedback. Can you send us a sample project reproducing the issue? You can do so in a new support ticket - it will help us in locating the problem.

    Thank you very much in advance.

    Best wishes,
    Nick
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
  16. Ben
    Ben avatar
    28 posts
    Member since:
    Dec 2007

    Posted 02 Jun 2009 Link to this post

    Nick,

    I have done some more investigation into this bug and have found out a bit more about it.

    1. If I have no sorting defined for any columns, and add a group by for a given column, saving and reloading the layout works.
    2. If I add sorting to a column which is AFTER the grouped column, saving and reloading the layout works.
    3. If I add sorting to the actual grouped column, saving and reloading the layout works.
    3. If I add sorting to a column BEFORE the grouped column, saving and reloading the layout DOESN'T work - i.e. the grouping is not shown (although the column thinks it is grouped since the 'Ungroup' option is available in the context menu).

    I tried reproducing this in the demo application (GridView --> Saving/Loading layouts) but couldn't get it to behave the same way. However I thought this new information (re. the sorting) might help you in diagnosing the error.

    Since I have now purchased a license, can we move this request to a support ticket?

    Regards,
    Ben


  17. Nick
    Admin
    Nick avatar
    767 posts

    Posted 05 Jun 2009 Link to this post

    Hello Ben,

    Thank you for contacting us and the provided additional details. If you manage to find a sequence that always reproduces the problem, please share it with us.

    There are other people in this thread so I cannot change it to support ticket but you can open a new support ticket about that if you want. Please refer to this forum thread in it.

    Kind regards,
    Nick
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
Back to Top
UI for WinForms is Visual Studio 2017 Ready