It takes some time to learn all of this, a tip is to study the sample applications and specifically the rules in the different applications. They cover a lot of different scenarios and is great for learning how to use rules and functions.
Regarding your current question, it is not entirely clear how you have set this up i.e the 2 BOs, the relationships between them and the rules you use but here are some pointers that may help.
If you have a BO and want to update related BO instances i.e your items, if you have these linked to the main BO, you easily update all items by a rule like this:
Bo.Items.Height=123...
Then you can add conditional parts to that e.g:
If Bo.Height WAS CHANGED then
Bo.Items.Height=123...
You ask about using a question and you can't use questions in BO rules as many times BO rules run randomly here and there e.g after changes in BO or related BOs (and the question needs user input i.e answer yes/no i.e it cannot be used). You have different workarounds around this though and which one to use depends on your scenario. The easiest one is using a process to initiate the whole height change and then have a question in the process (processes support questions in most situations) e.g (process actions i.e each rule here are rows in your process):
EDIT Bo USING HeightChangeForm
DISPLAY QUESTION 'Do you want to .....'
If Question.Reply='Yes' then
Bo.Items.Height=Bo.Height
DISPLAY MESSAGE 'Item height(s) changed'
ELSE
DISPLAY MESSAGE 'Item height(s) not changed'
You then have a button/menu item or whatever somewhere that starts this process.