I've actually encountered this situation myself in the last few days and have been able to come up with a workaround.
The first thing you need to know is that a setselectedvalue command currently won't work when the listbox is databound. This is an issue that I believe is already under the attention of the development team (can't find the source though). So, indeed you have to use the setItems command mentioned above. I personally have load in script set to false, so the datasource loads on startup like normal, and initialize the datasource in the OnVariableInitialization part of the application.
Next, you create a dummy datasource with only the dimension that is also used in the dropdown and a query-filter of the same dimension of type prompt. The name of the prompt has to be something you haven't used in other prompts, otherwise it would get refreshed in an APPLICATION.setVariableValue command. For example, make it: "Enter dimension value".
Now, in your dropdown, add the following script:
var value = Dropdown.getselectedvalue;
DS_DUMMY.setVariableValueExt("pmEnter dimension value", value);
DROPDOWN.setSelectedValue(DS_DUMMY.getMemberList(Dimension, 99));
In my case, I've used this workaround with a checkboxgroup and multiple-select scripts, but I'm pretty sure this would work for a single select (dropdown) as well. Now that i'm writing this, I think this could actually have been done somewhat easier, but this is how I currently have it working.
Let me know if this makes any sense!