I've made a stripped down fiddle, and you'll have to interact with the map to see the issue:
JSFiddle Link
You'll notice, or at least I hope you will, that if you make a quick drag, the map seems to flash completely gray for an instant. It does not happen every time, so you may have to quickly drag several times to see this. Furthermore, it seems to happen more frequently at lower zoom levels.
This is after the tiles have been cached, so it's not google maps fetching the tiles that causes this. Furthermore, I've tested the behavior on a standard google maps example and it does not cause this flicker. I think it may have something to do with $scope.$apply() being called from the directive and forcing a repaint, because I notice sometimes that the flicker happens while google is loading the tiles, i.e. the two events happen independently of one another.
While my last resort is to dig into the directive, this seems like a pretty fundamental problem from a UX standpoint, and I suspect that some of you must have run into this issue. Perhaps most importantly, the example at
http://angular-ui.github.io/angular-google-maps/#!/demo does not suffer from this issue, though they have set a minimum zoom level, and so I wonder if this is simply a cheap fix for the issue I'm describing.
Thank you for any help you can offer, I've been tearing my app apart at the seams all day trying to pinpoint what's happening, and any advice would be greatly appreciated.
why does stack overflow require a code-line for a jsfiddle link? seems totally contrary to the point of making a fiddle...
I started using ng-grid, and honestly seems it's not easy to tame that beast. I'm having various problems and this is one of them. I'm using ui-router and before ng-grid I was using my own implementation based on ng-repeat and haven't encountered this, so I'm assuming somehow ng-grid is responsible.
So I have a few tabs and ui-view with a grid underneath. Everytime you switch a tab, controller initiates a request and fetches data for the grid. Very first time when you open the app, everything seems to be fine, but whenever you switch to a different tab, for a few milliseconds it shows ugly, unbound content.
I tried to hide grid with ng-if, ng-hide and ng-show - (data.length <= 0), but that didn't work. I tried to place a few $timeout functions, that didn't help either.
Any ideas how to fix that?
UPD: first time when I posted this question I thought what if I make the grid transparent and then change opacity after it gets the data. So it kinda did the trick.
jQuery.animate({opacity:1})
and then I deleted the question, but soon I realized this is not very good way to solve the problem - not very anguleresque. Question remains open.
UPD: Had to abandon ng-grid and currently looking for something better. ng-grid in its current state is horrible. It's painfully slow, full of strange bugs and pretty much useless. Version 3 if far from being ready, and current version is abandoned. Very, very sad.
Actually after using ng-grid for awhile, I have to admit - it's really, really bad. Anyone who values own time and nerves should stay away from it. In its current state project is completely broken, have tons of bugs and authors won't even accept any tickets. They all working hard on a new version and honestly God knows when they ship it. So, for your own sake DON'T use it! I mean I believe in this product and that team. After all those guys gave us awesome ui-router and amazing angular-ui directives. Check the date, who knows maybe this answer already is obsolte and by the time you run across this post all the problems in ng-grid are already solved. But simple fact still remains - the product was so bad, they even decided to rename it.
For now I switched to ux-angularjs-datagrid. It may not be a complete grid solution and doesn't have a cool name and many features you're gonna have to build yourself, but it's amazingly fast and responsive.
I'm a Ui/Ux designer, and I've been asked to give some advice on the architecture of an iPhone app, the said app implies a section called 'Help and guides' for the users to know how to properly enter their data in the app. While analyzing the app, I was going to recommand that it may be interesting to put that part in the settings, and I was challenged about the reason I would do that. All I could come up with was that it was kind of a habit to put it there. But indeed, why would we put the help in the settings?
While doing some research, it appears that the help and the FAQs are often placed in the settings of the apps, and I was wondering why. Even though it seems obvisous to me that this has evolve into a known pattern to the user, I was wondering if there was a proper justification for this practice. Any ideas or clues?
From my research into this as I am currently designing Android and IOS Apps. The reason to group both these items under the one menu is to keep the screen as clutter less as possible. Due to the screen size of a mobile phone, the need for space is high so removing the buttons by grouping them under the one menu helps greatly.
I would suggest possibly making a Menu button with the options to access help & settings as subheadings personally.
I'm trying to use FluidMoveBehaviour from the Dynamic Layout and Styles presentation at MIX 2010 in combination with MVVM (Caliburn.Micro).
The Master/Detail behavior is what I'm after. It isn't working and I would like to find out what's happening behind the curtains to see why Silverlight is not picking it up.
How can I debug the FluidMoveBehaviour?
Because the FluidMoveBehavior is so encapsulated and because the source code is not available, the only recourse when it is not working as expected is trial and error. Even worse, the feature is conceptually very opaque and the implications of what will happen if you change the settings are not at all clear initially.
Your best hope of getting the master/detail scenario to work (the most complicated one) is to create a very small example, get it working, and gradually reintroduce your code until it is fully integrated.
There are other working examples besides the MIX10 demo. I recommend reading and re-reading Mike Taulty's explanation until the feature is less opaque:
Blend Bits 14: Fluid Movement
Notice how he approaches the problem gradually and with little test programs. That is how to avoid wasting time trying to use a "black box" feature.
Anyway, the promise of "effortless interactivity" might ring rather hollow right about now. It is perhaps a lesson for other behavior developers: how will the clients debug it when it isn't working? The answer: give them the tools, like configurable logging. When it's not working, the silence is unbearable.
I'm looking into both of them, and while I have been quite pleased with NetAdvantage at my previous employer, I find the price point (plus testimonials like at What is the best winform UI component set?) to make me hesitate and consider DXExperience.
That said, I'm wondering:
What your experiences are in field with either (or ideally both)?
Would you be willing to spend your own hard earned money on either one?
This is for WinForms - and also a last question:
Does DXperience have anything analogous to the UltraWinDataGrid? This grid is awesome -- and the absence of a reasonable competitor is a show stopper.
Note: This is not intended to incite a flame war, I am interested in experiences, and pragmatic advice.
We evaluated libraries from Syncfusion, Infragistics, ComponentOne, Xceed, Janus and DevExpress. We decided on DevExpress based on its feature set, grid performance and features and ribbon control features.
Comparing Infragistics and DevExpress Grid control I found that:
DevExpress Grid is faster at loading,
and handles more data, than the
Infragistics grid.
25K rows * 50 columns: Infragistics load time is 2000ms, DevExpress load
time is 1400ms
50K rows * 500 columns
Infragistics 600ms first load, 400ms subsequent
DevExpress 1000ms first load, 250ms subsequent load
500K rows * 50 columns
Infragistsic 3500ms first load, 7000ms subsequent load
DevExpress 2000ms first load, 1700ms subsequent load
2M rows * 10 columns
Infragistics Out of memory exception
DevExpress 8500ms first load, 10000ms subsequent load
The DevExpress DxGrid control for Windows Forms is fantastic. Inline editors make the UX very nice. The sorting and grouping is easy to use and understand for both the developer and end-user.
Overall I am extremely happy with the library. Their support is excellent. Over the life of this project, I have asked over 20 support questions and have received a good response each time.
I would spend my own money on the DevExpress controls.
The DevEx Grid is awesome, though I've got no experience with the UltraWinDataGrid.
Would I be willing to spend my own money on DevEx stuff? Yes, and I do - I've been using their stuff from way back in the Delphi days (maintained Delphi subscription for about 5 years, coming up 4 years for the .NET subscription now). They've got fabulous support and a very strong product line.
Edit: on the basis of what I've seen at the Infragistics site for their NetAdvantage WinGrid, the DevEx Grid can do all that and more. All the filtering, sorting, grouping and custom layout stuff you're probably used to, plus Card Layouts amd more. Plus, DevEx have a no-questions money-back guarantee if you're not happy with their stuff.
Honestly, I'm not a DevEx shill, just a really happy customer who - yes - pays his own money for their stuff :)
I am an asp guy, and I used devexpress when I was contracting. Any suite has its own set of gotchas you have to learn, but overall I was pleased. My current employer uses telerik and I look back on my time with aspxperience as a bright time.
I did spend my own money on their stuff, and I think it was a good choice. Their grid alone seriously helped me get contracts.
I swing backwards and forwards hugely with NetAdvantage. The controls are good but over complicated - huge learning curve on a new control. They are also not very efficient and tend to generate large amounts of viewstate data and HTML; much more so than I feel is necessary. Their control set has evolved over the years and to be honest, I'd prefer them to start again - even though it would force me to rebuild big parts of my webapps.
Their quality control though is awful. Every new release is greeted more with fear than joy introducing new bugs as fast as old ones are fixed. For example, they've left a "debugging" statement in the JavaScript files.
I suspect their support has recently been outsourced and their standard response is "Please produce a standalone project to demonstrate the bug" which is tedious to say the least. It took three months waiting for a fix recently. I find myself raising far more support calls with Infragistics than all other companies put together.
Linked in with this, their documentation never seems to work for me. Maybe I'm not trying hard enough.
But despite all of the negatives, the controls are feature rich and can save time in rolling your own. How much time? Not so sure about that anymore.
We were wow'd by the Grid components of NetAdvantage too. It's been downhill from there, though. It seems like their technical support is "surprised" by the "complexity" we want to incorporate into the table (i.e. sorting, checkboxes, menus, etc.).
There solution has been to spend more money with them on their consulting services to fix their code. I'd rather chew my hand off before turning over any more money.
It is comforting to know, though, that we're not alone in our experience.
I've worked with both DevExpress and Infragistics and found DevExpress far, far better for several reasons. The controls perform better, seem more stable and the dependency files are much lighter weight for DevExpress. We actually made a project out of getting off of an older (.Net v1.5) solution that used Infragistcs because it was so difficult to maintain due to the required dependency installation.
These are proving helpful as well:
http://www.componentsource.com/products/dxperience-winforms/reviews.html
and
http://www.componentsource.com/products/netadvantage-net/reviews.html
But not decided yet...
My Experience with Infragistics Netadvantage:
The Software has a lot of bugs and the Support cannot handle most of the slightly advanced questions. A lot of my Problems with Infragistics (and those are bugs in Basics!) were already well known in 2011 and earlier.
I deeply regret buying the Software without doing enough Research. In the end I coded several Workaround scripts, to be able to use the controls at all. Most of the Solutions the Support team provides deal with Setting a property of their controls to "Off". Final Solution before opening a case: Turn all Features off...
So I really cannot recommend buying these Controls.
A good Option might be the AjaxControlToolkit, which doesn't cost anything. Infragistics promises a lot regarding their controls, which you won't easily achieve.
One Example: When you filter in a DropDownBox and you want to step to one of the results, everytime a postback is made, which leads to unwanted behavior when you want to react to a select-event at all.
Furthermore stepping through the elements a Little fast, the second or maybe third postback simply gets lost.
With the AjaxControlToolkit, you know from the start that you have to do some Tasks by your own, but at least the Basics are not Buggy.
At the Moment we are looking into Telerik and did not get into similar Trouble up till now.