Collapsing item in JavaFX Tree View leaves some items improperly rendered - treeview

My JavaFX application uses Tree View and tree items are added dynamically added at different points while the program is running. The tree view does not render some tree items after expanding and collapsing items. The following images will make my point clearer.
The first picturing shows the tree after expanding and the second picture show the same tree after collapsing. As you can see the item Plate does not get properly rendered.
Is this a JavaFX bug or have I done something wrong? Also is there a correct way to get it rendered correctly or a workaround if this happens to be a bug?

Related

Kendo TreeView - load the items with infinite scroll

When I have a big tree that I build with kendo tree view, the time until we can see the tree is very long, and sometimes it hangs the browser.
I think it's because I am loading all the tree items of the tree..
I tried using loadOnDemand: true and all folders to load them collapsed, and it solve the problem, but I don't want to collapse the folders, I want to load it expanded.
Is there a way to do it?
Maybe an infinite scroll that what we see in the current position in the scroll, is what we see in the DOM, and not to see the all tree in the DOM.
Thanks

Xamarin.UITest: Retrieving elements hidden from screen

I want to write a UI test for my Xamarin.iOS app to make sure that all tableview elements/cells exist on a screen. I could use app.Query(e => e.All()), but this will only retrieve elements that are currently visible on the screen. Is there a way to retrieve all elements (including the ones hidden from the view) in order to assert that the retrieved elements are as expected, without initiating a scroll action?
Any suggestions are greatly appreciated.
There isn't a way to do it directly, but there are methods to scroll list views down to get more items, but the original ones will then be removed from the visual tree.
Table views use cell recycling, so they only creates enough cells to fill the screen. As you scroll cells that are scrolled off the top are 'recycled' and shown on the bottom with new data. This means that the cells of screen actually don't exist - so there is nothing that UI test can access.
I've done it in the past by getting the items and caching some values, scrolling, getting more items, scrolling etc, building up a list of items as I go. Then once there is no more to scroll, checking the values.

Backbone Marionette - Wrapping A CollectionView From Left to Right

I have a very simple Collection View working exactly as expected. But, the underlying collection can get fairly long. The ItemViews themselves arent very wide. So, rather than have the Collection View run off the screen in a scrollable container, I would like to try and wrap the view from left to right maximizing the available screen width.
I have seen grid like views implemented with Composite Views, that are based on the table element. But I am wondering if there isnt just some magical way to make Collection View wrap left to right with css?
There is the CSS3 'columns' properties that may be what you're looking for: https://css-tricks.com/almanac/properties/c/columns/

WPF: Expanders stacked on top of each other where one should be expanded and take all remaining space

I think this is pretty known control but I couldn't find an WPF example/blog on the web. What I need is collection of Expander WPF controls stacked on top of each other just like in StackPanel. Difference though is that Expanders should be collapsed by default and once one of them is expanded it should take all the remaining space. If expanded Expander is in the middle of the stack it should push items below it all the way down to the bottom edge of the parent element. Every expande/collapse action should be animated.
StackPanel as the parent panel for Expanders here is out of the question because it can't give "all remaining space" to its child(ren). DockPanel does this partially but it can do that only for the "last child" and I need to be able to do it for any child.
So what would be the best approach to implement this?
To answer my question, I just found out that controls like this is called Accordion. There are couple of implementations online but I think the most complete is that in WPF Toolkit http://wpf.codeplex.com/

GTK# - Problem with components overlapping upon resize

I have a panel containing a form (elements such as labels and textboxes within a table) and 3 buttons (in an hbuttonbox) at the bottom-right. If I shorten the panel by dragging the bottom border upwards, the 3 buttons come with it, and lay on top of the other form components, causing messy graphics. I would like the panel to not resize smaller than the bottom edge of the last component within it. Due to employer restrictions, I am not able to show a screenshot of the GUI. I will try to make any clarifications that are asked.
This probably has something to do with some resizing or general size settings on the components, but there are so many options that I'm not sure where to start.
Any ideas for an easy fix to this without getting down into the complicated nest of components? If not, any ideas on where I should start messing with settings?
Thanks!
UPDATE:
Everything is contained in a VBox with 3 cells. Elements in cells (top to bottom): Table, ScrolledWindow, HButtonBox. The ScrolledWindow bottom edge also moves (resizes) with the bottom edge of the panel when resizing, until the panel bottom goes above the whole ScrolledWindow. Then the buttons keep moving up, staying in relation to the panel's bottom edge.
By "form" do you mean you are using a Gtk.Fixed to contain your table and buttonbox? Then that's probably what's going wrong - you should use vboxes and hboxes for your layout. These will resize properly. Fixed layouts are only for exceptional cases.
EDIT:
Other suggestions:
Perhaps the HButtonBox has pack type 'end' instead of 'start'?
You could try playing with the 'fill' and 'expand' packing properties of the VBox's children.
I ended up adding a Height Request to the container, just slightly longer than the part of the scrolled window. This now stops resizing to where the bottom buttons would overlap the components above it. The problem (before the fix) is shown below:

Resources