Allow components event to change states of other components
New states feature is excellent but restricted for self components interaction. In many cases, especially in web and desktop apps, there are cases where a component event should affect another element on screen.
It would be a super powerful option to allow a component event to change states of another component.
Currently if i use component A inside component B, i can't use A to change state of B, even though A is part of B.
Thomas Gautheron commented
Pretty please, we need this feature!
Ivan Vladimirov commented
The easiest workaround is to hit Ctrl + G on the inside A component, to place it in a dummy group, and than you can change parent B state using the group.
The problem is when you have another complex, nested component C, inside A. Than you do not have easy time changing state of B by clicking C.
I vote for this feature too, to have more flexibility to change one component state from another. For example, give component B a name, so you can reference it.
Emily Christmas commented
In case anyone is struggling with this, I've just ungrouped the element from the component within the component to allow of prototyping within a single component. It doesn't effect the component elsewhere. May not be a viable solution for all instances, but it worked easily enough for me.
Everaldo Amorim commented
It would bring XD to the next level!
Mr. D commented
We need this
Ondřej Regál commented
I am also looking for this feature now! Please add this :)
Vincent Monmaur commented
This would allow XD to compete with tools like Axure which lets any interaction affect the state of any components (dynamic panels in Axure).
To this day, XD is not a prototyping tool. It is a UI design tool that lets designers demonstrate some animations or some behaviours on their canvas instead of using word specs. But apart from links, simple hovers and overlays, it is not suited at all to prototype even simple interactions such as carrousels. The duplication of artboards for that purpose is just an horrendously bad practice. Components are there. States are there. Interactive behaviours need to happen at this level.
Jonas Hartmann commented
This would we a game changer for prototyping. right now im trying to set up a menu with really big hover elements which cover other navigation elements, which is almost impossible to set up with what we can do right now.
Jesse Dubberke commented
This is a great idea and I’m here from just googling the exact same question.
Would be powerful indeed.
Justin Waters commented
Note sure if Adobe really watches this but casting my vote for this.
Maggie Glissman commented
This is a huge roadblock for me in my work. Could this be resolved by including component states as destinations? Please add this feature!
Tony Watters commented
This would be a great addition to XD
László Pálfi commented
This would be a very welcome feature.
Please consider implementing this ASAP.
Whitney Morgan commented
Agreed. Looking for this feature now.
Fabio Barreiro commented
I'm creating a prototype now and couldn't use this.... :-(
Radu Ghitulescu commented
it would be super important to have this feature and also to be able to link a component specific state from another artboard
Rob K. commented
This would be very helpful and a gamechanger for Adobe XD.
I also agree on the idea that this should work across multiple artboards as well (component on Artboard A can change the state of a component on Artboard B).
Just to clarify, there are two features needed here:
1. Nested components can trigger a state change in the parent component
2. One component can trigger a state change in another, unrelated component on the same artboard
The super feature would be …
A component can trigger an artboard transition *and* change the state of a component on that artboard.
It would be amazing if you could control components with different components.
For example, InDesign buttons allows you to hide other buttons when in action.
If XD could have that ability it would really branch out the depth of how we can create prototypes!