Current filter:
                                You should refresh the page.
                                  • [DevExpress Support Team: CLONED FROM T552585: Data added to GridControl from SQLite database - how can I access columns by name]
                                    Hi

                                    So what is best way using your controls for me to achieve what I need then - can you offer an example or post some code?

                                    Basically what I am trying to achieve is this:-

                                    I run a SQL query against my SQLite database and the results are shown in the gridcontrol - only some columns (the important ones) are visible in the gridcontrol

                                    When I click on a row I want to then be able to show in a panel below the contents of some of the "hidden" columns, so basically it will be a summary panel and clicking an item populates this panel

                                    So I need to access the contents of a cell in a specific column and the selected row

                                    If there is a better way for me to do this using any other DevExpress controls then please let me know

                                    Thank you very much

                                1 Solution

                                Creation Date Importance Sort by

                                Hi,
                                I suggest you use DataLayoutControl to display values from hidden columns. Bind both GridControl and DataLayoutControl to the same data source and call the DataLayoutControl.RetrieveFields method to populate this control with editors. Handle the DataLayoutControl.FieldRetrieving event to cancel creating editors for visible grid columns. I've attached a simple project demonstrating this approach in action.
                                Drop me a line if you have any further questions.

                                Show all comments
                                • Darren Rose 09.06.2017

                                  Hi Andrew

                                  Thank you for the sample project, this certainly looks like a clever way to achieve what I need

                                  I will have a play later when I get back and let you know how I get on

                                  I do have one initial question though - currently it shows ALL hidden column values, is there anyway of having control over which ones it shows and how it shows them?

                                  If so please explain

                                  Thank you again

                                • Andrew Ser (DevExpress Support) 09.06.2017

                                  Hi Darren,
                                  Yes, you can skip some fields and arrange created editors as you require. If you know exactly which editors you want to see, just drop them to DataLayoutControl at design time, arrange them as require and bind to your data source as regular controls using their DataBindingsproperty:

                                  [C#]
                                  textEditName.DataBindings.Add("EditValue", bindingSource1, "Name")

                                  If you don't know which fields should be hidden in advance, use my previous approach to hide unnecessary editors (extend the IF statement in the DataLayoutControl.FieldRetrieving event handler). Then, customize the generated layout afterwards in code. It can be done using the BaseLayoutItem.Move method.

                                • Darren Rose 09.06.2017

                                  Okay thank you - I think for nearly all my needs it will be as simple as -
                                  If hidden column cells contain a value then show it, if they are empty (null) then don't - and I would need to show contents of one visible cell at the top as a title

                                  -----

                                  Some questions now that I have had a chance to try this method:-

                                  1. How can I check if one of the values is empty/Null and then not show relevant field e.g. in your example if we change line 41 to below so that TYPE field is empty then how to stop it showing in the datalayoutcontrol, but only when field is empty, so in my case for some rows it will show for others it wouldn't
                                  [VB.NET]
                                  dt.Rows.Add(i, "Info" & i, 3.37 * i, DateTime.Now.AddDays(i), "", i Mod 2 = 0)
                                  2. how do I set the fields shown in the DataLayout to be read only so can't be typed and so text cannot be highlighted/selected

                                  3. similar to 1 but how can I get the value of an item to then decide not to show it or perhaps to change colour depending on value etc

                                  4. I have also tried idea of creating layout at design time but still I would need to be able to check if a value is null/empty to then hide unwanted items in the layoutcontrol

                                  5. How do I configure it to use 2 columns instead of one at runtime and then how do I stipulate which controls (or groups) go in which column? as I want to have a left column containing a group with the textedit controls in showing values as normal (for basic information), and then a second group in right column in same way that would show more advanced information

                                  -----
                                  On a separate note - whilst googling the issue I saw lots of mention that if using databases with DevExpress then you should really make use of XPO (eXpress Persistent Objects) as it gives much better handling of the database for doing queries and showing results - is this true, and is it something I should consider.  Excuse me asking here, but just that as I pay for DevExpress I may as well make use of as much of it as possible if it improves my products :)

                                • Andrew Ser (DevExpress Support) 09.07.2017

                                  Hello Darren,
                                  Please accept my apologies for the delayed response.
                                  I've prepared a simple sample demonstrating how to implement everything you listed (see the attachments). My project contains some comments to give you a better idea of what my code does.
                                  Note that I replaced TextEdits (and other editors) with LabelControls because the latter don't allow typing and selecting their text. I also arranged generated items into groups in the SetupLayout method. Please test my project and let me know how it goes.

                                  As for XPO. As you know, this is our ORMthat can be used with different controls. At the same time, our controls can be used with many existing ORMs, including XPO, Entity Framework and others. Since XPO is our product, it provides an easy-to-use API to work with our controls. For example, our filtering mechanism (the CriteriaOperator language in particular) is common for our data-aware controls and for XPO sources. Thus, once you learn how to use our CriteriaOperator syntax, you can use it both in our controls and in XPO at the same time.
                                  Besides, our data-aware controls don't impose limitations when using other ORMs. We made them compatible with different technologies. So, you are free to choose tools to develop your app. However, if you want to try XPO, go ahead. I'm sure you won't be disappointed and we will be happy to help you with it. Feel free to contact us if you have any questions.

                                  See also:  GridView.FocusedRowObjectChanged

                                • Darren Rose 09.07.2017

                                  Thank you very much Andrew for your detailed reply and example apps

                                  Initial testing of these does seem to show it can do everything I required, so I will now learn from it and implement it in my app

                                  I will then come back to you and let you know how I got on

                                  One quick question, is there anyway of showing the labels (date:, value:, type: and check:) in bold for just the title e.g. the

                                  [VB.NET]
                                  e.Item.Text

                                  Also on line 49 you have the following code - I can't see it is actually needed/used? or am I missing something

                                  [VB.NET]
                                  Dim label As LabelControl = TryCast(e.Control, LabelControl)
                                • Andrew Ser (DevExpress Support) 09.07.2017

                                  Hi Darren,
                                  Yes, you can make this text bold by adding the following line to the DataLayoutControl1_FieldRetrieved event handler.

                                  [VB.NET]
                                  e.Item.AppearanceItemCaption.Font = New Font(e.Item.AppearanceItemCaption.Font, FontStyle.Bold)

                                  Dim label As LabelControl = TryCast(e.Control, LabelControl)I put this line just to draw your attention that you can also customize LabelControls. If you don't need to customize them, remove this line.

                                • Darren Rose 09.07.2017

                                  Thank you

                                  One problem so far - it only works for fields that have columns hidden in grid view, where in the Main group I would want to be able to show non hidden column values as well if possible

                                  Also in previous example even if columns were not added to gridcontrol at all (meaning not visible or hidden, just not added as columns) it would still show the information in the panel (n.b. had to add try..catch to DataLayoutControl1_FieldRetrieving - but it still works)  e.g. in your first example if I remove column called check from the gridview then I can still show its status in the information panel - but with second example I can't

                                  Finally for now - with first version it used camelcase so TargetUserName appeared as Target User Name which looks nicer, now it doesn't - can I do this somehow?

                                • Darren Rose 09.07.2017

                                  ignore last point re CamelCase - have used a RegEx to convert it -

                                  [VB.NET]
                                  Dim Text As String = Regex.Replace(e.FieldName, "((?<=[a-z])(?=[A-Z]))|((?<=[A-Z])(?=[A-Z][a-z]))", " ")
                                • Darren Rose 09.07.2017

                                  excuse further questions :)

                                  When it firsts shows groups it is not hiding the empty/null ones - it only does it when I then select another entry in the grid - see first pic in screenshot

                                  And how can I stop group boxes changing width depending on text, as per second pic in screenshot - I want to keep both boxes a set size, preferably Main would be 1/3 of space and Advanced takes up other 2/3 of space - basically second group wider than first, but don't want them changing sizes automatically

                                • Darren Rose 09.07.2017

                                  To expand on one of my previous comments e.g

                                  "Also in first example even if columns were not added to gridcontrol at all (meaning not visible or hidden, just not added as columns) it would still show the information in the panel (n.b. had to add try..catch to DataLayoutControl1_FieldRetrieving - but it still works)  e.g. in your first example if I remove column called check from the gridview then I can still show its status in the information panel - but with second example I can't "

                                  I amended your second example which is attached - as you can see I have removed the Check column from the grid designer, so now it shows the check value after the two group boxes rather than in them as it should? this only happens for items not "added" as columns to gridcontrol and set to hidden true

                                  I need to a) show values in groups for items which don't have a column and b) show some items which are NOT hidden in grid but visible e.g. from example attached I would want to show ID column in Main group box as well as Date

                                  I also amended your sample to show size of groups changing depending on text size, I need them fixed sizes - also how to stop annoying horizontal scrollbar from appearing

                                • Darren Rose 09.07.2017

                                  Okay think I have fixed the first issue re not being able to show values from columns which were NOT hidden - amended code in DataLayoutControl1_FieldRetrieving to remove check for visible e.g. If GridView1.Columns(e.FieldName).Visible Then

                                  So this leaves

                                  1. issue where if a field is not added to the gridcontrol and set to hidden then I can still show its value in group box below, but it doesn't hide if NULL or empty - as seems it can only do that for fields added to grid and set to hidden? Anyway round this as my database contains 35 columns of additional information I may need to show and I don't want to add them all as hidden columns in grid as seems a waste of time

                                  explained also in previous post in more detail and in modified example app

                                  so in summary if it is not added to my grid e.g code below then I can still show its value in groupbox below but the hide if value empty/null then fails to work and it shows all the time

                                  [VB.NET]
                                  Dim gcQuery8 As GridColumn = GridView1.Columns.AddField("SubjectUserName") gcQuery8.Caption = "SubjectUserName" gcQuery8.Width = 120 gcQuery8.OptionsColumn.AllowEdit = False gcQuery8.Visible = False
                                  2. When it firsts shows groups it is not hiding the empty/null ones - it only does it when I then select another entry in the grid - see first pic in screenshot  in earlier post

                                  3. And how can I stop group boxes changing width depending on text, as per second pic in screenshot - I want to keep both boxes a set size, preferably Main would be 1/3 of space and Advanced takes up other 2/3 of space - basically second group wider than first, but don't want them changing sizes automatically

                                  Sorry for all questions - hope you can help, 99% of all I need is working now, so nearly done

                                  Will be out most of tomorrow at a funeral, but hope to come home to a reply and solution so I can finish project over weekend

                                  Thanks again

                                • Andrew Ser (DevExpress Support) 09.08.2017

                                  Hi Darren,
                                  From what I gather, you summarized all the unresolved issues in your last post. Let me answer them one by one.

                                  1. I see that now you can show items for non-hidden columns. I added special conditions to my code to work with LayoutControlItems based on GridColumns' visibility. For example, you removed the IF statement from the FieldRetrieving event handler to generate items for all data source fields.
                                  You can find that the code in the GridView1_FocusedRowObjectChanged event handler is also based on GridColumns. I use this event to conditionally hide LayoutControlItems. The only reason why I rely on GridColumns is its simplicity.
                                  If you don't want to rely on GridColumn, write special code than runs through data source fields and checks values for them. This code is data source dependent. For example, in the case of a DataTable, the code may look as follows:
                                  [VB.NET]
                                  Private Sub GridView1_FocusedRowObjectChanged(ByVal sender As Object, ByVal e As DevExpress.XtraGrid.Views.Base.FocusedRowObjectChangedEventArgs) Dim dataRow As DataRowView = CType(e.Row, DataRowView) For Each col As DataColumn In dataRow.Row.Table.Columns Dim value As Object = dataRow.Row(col) Dim lci As LayoutControlItem = GetItemByFieldName(col.ColumnName) lci.Visibility = If(IsNullOrEmpty(value), LayoutVisibility.Never, LayoutVisibility.Always) Next End Sub

                                  >> now it shows the check value after the two group boxes rather than in them as it should?
                                  You can see that I move items manually in the SetupLayout method. For example, you can add the following line to move the ID item to the Main group:

                                  [VB.NET]
                                  mainGroup.AddItem(GetItemByFieldName("ID"))
                                  2. I cannot reproduce this behavior after all modifications I made in our sample. You can test it in the attachment.

                                  3. LayoutControlGroups (boxes) are auto-sized to accommodate the whole content. Though you can limit their size to absolute values using the approach described in the How to: Lock the size of a layout item help topic. Just apply this code to mainGroup and advancedGroup in the SetupLayout method.
                                  If you want to force them to use relative values, change the LayoutControlGroup.LayoutMode property to Table for the main root group (not for mainGroup that I created in code but for the root group that is already created at design time) and customize table cells as required. Please see the Table Layout help topic for more information.
                                  I've attached another sample to demonstrate the Table Layout.

                                  I hope you find this information useful. Feel free to reactivate this ticket if you have any questions.

                                • Darren Rose 09.08.2017

                                  Hi Andrew

                                  Firstly many thanks for your detailed reply again

                                  I can confirm that the suggestion you made have fixed issues 1 and 3 above

                                  But I do still have issue 2 and can't seem to work out why

                                  Whenever I load my code and populate the grid, it is showing two fields even though they have null/empty values - if I move a row down and back up it is then okay, so just initial load for first row in grid - see screenshot

                                • Darren Rose 09.08.2017

                                  Sample attached which replicates the behaviour

                                  Simply moving the code that populates grid from form load to a button click like it is in my app cause issue I reported above

                                  So run attached project and now click button1 to populate grid, you will then see Value and Type appear in Advanced group even though empty/null

                                • Andrew Ser (DevExpress Support) 09.11.2017

                                  Hi Darren,
                                  Thank you for the project. The cause of this behavior is that the GridView.FocusedRowObjectChanged event isn't raised when you bind the grid to data. This happens because we subscribe GridView to this event after an actual binding took place. So, the grid's focused object is already set when we subscribe GridView to the event. It doesn't happen in the Form's constructor because our grid starts working with data a bit later than the constructor is called. At that time, all controls are bound and subscribed to the required events.
                                  If you want to bind data not in the form's constructor, one of the solutions is to:
                                  1) Remove binding the grid to BindingSource at design time.
                                  [At runtime]
                                  2) Bind DataLayoutControl to a data source. Call RetrieveFields to generate items.
                                  3) Subscribe GridView to FocusedRowObjectChanged.
                                  4) Bind the grid to the same data source.

                                  I modified our project accordingly. Please find it in the attachment.

                                • Darren Rose 09.11.2017

                                  Thank you Andrew that has solved the problem

                                  Many thanks yet again for all your help on this, again reminds me why I purchase DevExpress products and renew them every year, great products and even better support

                                  I will continue working on my project this week and get back to you if any problems, but think all should be fine now!

                                • Andrew Ser (DevExpress Support) 09.12.2017

                                  You are very welcome, Darren!
                                  Our customers' compliments are the best reward for all of us. Should you have any questions, feel free to contact us at any time. We are always happy to help you.

                                • Darren Rose 09.12.2017

                                  Hi

                                  All working okay in my project - but one issue

                                  I have configured layout as discussed, so two columns 33% and 67% - so why does it still show a scrollbar and insist on being wider than form allows even though all content fits on screen?

                                  See screenshot

                                • Andrew Ser (DevExpress Support) 09.13.2017

                                  Hi,
                                  The cause of this behavior is the Source field in your left group. LayoutControl always keeps the 33/67 ratio on resizing groups. When it happens that the left group cannot be reduced anymore (because the Source field reaches its minimum size), the size of the right group still should be twice wider than the left group. Thus, the scroll bar appears.
                                  If you want to resize groups further keeping the ratio, disable the horizontal auto-sizing for LabelControls. For example, add the following lines to the DataLayoutControl1_FieldRetrieved event handler:

                                  [VB.NET]
                                  Dim label As LabelControl = TryCast(e.Control, LabelControl) label.AutoSizeMode = LabelAutoSizeMode.Vertical label.Appearance.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap

                                  Please test this approach on your side and let me know whether it works as you need.

                                • Darren Rose 09.13.2017

                                  Hi
                                  Is there a better way of doing this then

                                  As method above causes strange behaviour where blank line appears on some entries between Time Created and Event ID

                                  Also still lots of spare space in second group box "advanced" whilst "main" now appears cluttered - better for second group box to shrink automatically to fit content so "main" doesn't get squashed up?

                                  see image

                                • Andrew Ser (DevExpress Support) 09.14.2017

                                  Hi,
                                  In this case, Table layout cannot be used there. As far as I understand, you want to give a priority to the left group so that it isn't resized while the right group has free space. Please give me additional time to review all your requirements once again and look for a suitable solution.

                                • Darren Rose 09.14.2017

                                  Thank you

                                  One other quick question - the date time field is in ISO 8601 format and your colleague Pavel showed me (link below) how to get it to show in my chosen format in grid view

                                  BUT it still shows wrong in the DataLayoutControl - so how can I make it also show date correctly there as well?

                                  https://www.devexpress.com/Support/Center/Question/Details/T555382/datetime-display-format-not-working#answer-ab4872e0-0877-478e-a5ca-5c9cd2a4bf94

                                • Andrew Ser (DevExpress Support) 09.14.2017

                                  Hi Darren,
                                  Pavel contacted me and said that he will answer you in the DateTime Display Format not working ticket.
                                  I've finished my work with our project. As I said, the Table layout cannot be used there and it is better to return to the Regular layout. Although this layout doesn't support relative sizes, I suggest you lock the size of the main group so that it shows full data. As a result, only the advanced group will grow and decrease.
                                  As usual, I've attached the modified project below. You can see that I lock the group's size using an additional EmptySpaceItem.

                                  Please share your thoughts about this approach.

                                • Darren Rose 09.14.2017

                                  Thank you - I will give that a try later

                                  Just been trying Pavel's suggestion but changing the TimeCreated field to dateedit then throws up errors in other sections of the code you created such as the line below, so I will need to find another way - shame I can't just show the grid display value for that field - in same way I use the display field to send correct value when using ExportToXLSX

                                  [VB.NET]
                                  Dim label As LabelControl = TryCast(e.Control, LabelControl)
                                • Darren Rose 09.14.2017

                                  just tried using same code idea from your last example in my app - but for some reason getting error as below, but cannot see why - any thoughts?

                                • Andrew Ser (DevExpress Support) 09.14.2017

                                  It looks like the exception is thrown inside our LayoutControl. Please follow the steps from the How to obtain the exception's call stack KB article to obtain the full stack trace.

                                • Darren Rose 09.14.2017

                                  Okay fixed that - in designer my control was set as layout mode > table - so changed it to regular and it then worked - not sure why it should make a difference as code set it to regular, but anyway it fixed that issue

                                  Still not getting layout as I wanted though, see screenshot, still too wide and now also getting vertical scrollbar even though no fields to make it that large?

                                  Thoughts please?

                                • Darren Rose 09.14.2017

                                  I recreated the error so I could provide you stack trace - downloaded PDB files, followed instructions etc - now when it gets to that error it opens resizer.cs and shows the error is located in that file? see screenshot, and copy/paste from Call Stack below - didn't see option on right click as per step 5 though (e.g. Right-click the Call Stack window. Check the "Show Non-user code" option in the context menu.)

                                  Let me know if you need anything else - always glad to help you back as you have helped me so much

                                  [C#]
                                  > DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.Resizing.Resizer.FindResizerParent(DevExpress.XtraLayout.BaseLayoutItem searchArea, DevExpress.XtraLayout.BaseLayoutItem item, bool searchHiddenItems) Line 2637 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.Resizing.Resizer.GetHiddenItemRealBounds(DevExpress.XtraLayout.BaseLayoutItem item) Line 2814 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.Utils.BaseItemCollection.CalcItemsBounds(System.Collections.Generic.List<DevExpress.XtraLayout.BaseLayoutItem> targetItems) Line 687 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.ViewInfo.LayoutGroupViewInfo.CalculateRegions() Line 201 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.ViewInfo.BaseLayoutItemViewInfo.CalcViewInfoCore() Line 291 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.ViewInfo.BaseLayoutItemViewInfo.CalculateViewInfoIfNeeded() Line 165 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.ViewInfo.BaseLayoutItemViewInfo.ClientArea.get() Line 176 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.ViewInfo.BaseLayoutItemViewInfo.ClientAreaRelativeToControl.get() Line 226 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.Painting.BaseLayoutItemPainter.DrawObjectCore(DevExpress.XtraLayout.ViewInfo.BaseLayoutItemViewInfo vi) Line 128 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.ItemCustomDrawEventArgs.DefaultDraw() Line 2637 C# Symbols loaded. DevExpress.Utils.v17.1.dll!DevExpress.Utils.Drawing.ObjectPainter.DrawObject(DevExpress.Utils.Drawing.GraphicsCache cache, DevExpress.Utils.Drawing.ObjectPainter painter, DevExpress.Utils.Drawing.ObjectInfoArgs e) Line 242 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.Painting.LayoutGroupPainter.DrawControlsArea(DevExpress.XtraLayout.ViewInfo.BaseLayoutItemViewInfo e) Line 120 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.Painting.BaseLayoutItemPainter.DrawObjectCore(DevExpress.XtraLayout.ViewInfo.BaseLayoutItemViewInfo vi) Line 138 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.ItemCustomDrawEventArgs.DefaultDraw() Line 2637 C# Symbols loaded. DevExpress.Utils.v17.1.dll!DevExpress.Utils.Drawing.ObjectPainter.DrawObject(DevExpress.Utils.Drawing.GraphicsCache cache, DevExpress.Utils.Drawing.ObjectPainter painter, DevExpress.Utils.Drawing.ObjectInfoArgs e) Line 242 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.LayoutControl.PaintIt(System.Windows.Forms.PaintEventArgs e) Line 1250 C# Symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.LayoutControl.OnPaint(System.Windows.Forms.PaintEventArgs e) Line 1293 C# Symbols loaded. System.Windows.Forms.dll!System.Windows.Forms.Control.PaintWithErrorHandling(System.Windows.Forms.PaintEventArgs e, short layer) Unknown No symbols loaded. System.Windows.Forms.dll!System.Windows.Forms.Control.WmPaint(ref System.Windows.Forms.Message m) Unknown No symbols loaded. System.Windows.Forms.dll!System.Windows.Forms.Control.WndProc(ref System.Windows.Forms.Message m) Unknown No symbols loaded. DevExpress.XtraLayout.v17.1.dll!DevExpress.XtraLayout.LayoutControl.WndProc(ref System.Windows.Forms.Message m) Line 1169 C# Symbols loaded. System.Windows.Forms.dll!System.Windows.Forms.NativeWindow.DebuggableCallback(System.IntPtr hWnd, int msg, System.IntPtr wparam, System.IntPtr lparam) Unknown No symbols loaded. [Native to Managed Transition] Annotated Frame [Managed to Native Transition] Annotated Frame System.Windows.Forms.dll!System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(System.IntPtr dwComponentID, int reason, int pvLoopData) Unknown No symbols loaded. System.Windows.Forms.dll!System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(int reason, System.Windows.Forms.ApplicationContext context) Unknown No symbols loaded. System.Windows.Forms.dll!System.Windows.Forms.Application.ThreadContext.RunMessageLoop(int reason, System.Windows.Forms.ApplicationContext context) Unknown No symbols loaded. Microsoft.VisualBasic.dll!Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun() Unknown No symbols loaded. Microsoft.VisualBasic.dll!Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel() Unknown No symbols loaded. Microsoft.VisualBasic.dll!Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(string[] commandLine) Unknown No symbols loaded.
                                • Darren Rose 09.14.2017

                                  After spending last few hours playing with this I have decided two groups next to each other just isn't going to work, because however I try it - table or regular I get scrollbars so decided to do just one group and then use separators to split up my sections

                                  Therefore ignore my previous question re sorting scrollbars etc

                                  Also realised during implementing this that I also need to be able to export all data from query results in grid to XLSX and to do that I need to have all columns added (and hidden) as if not I can't show the fields in the XLSX export

                                  So rethinking how I do this, may go back a step to the hidden grid column method you suggested, as if I have to have them all added for XLSX export I may as well make use of that method to show information

                                  This also gets passed the date/time not showing correctly, as I would only then show "hidden" values and that would be show in grid anyway

                                  Thank you so much for all your help, once I have played some more with my thoughts I will get back to you :)

                                • Andrew Ser (DevExpress Support) 09.15.2017

                                  Hi,
                                  Thank you for letting me know about your decision. You are welcome to reactivate this ticket if you need my assistance. I will be happy to be of help!