Property visibility problem

Hello,
here is the build file that I have:
< xml version="1.0" encoding="utf-8" >
<Project DefaultTargets="Test" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Bobby>Default</Bobby>
</PropertyGroup>

<Target Name="Test">
<Message Importance="high" Text="Bobby = $(Bobby)" />
<CallTarget Targets="Test2" />
<Message Importance="high" Text="Bobby = $(Bobby)" />
<CallTarget Targets="Configure2" />
<Message Importance="high" Text="Bobby = $(Bobby)" />
</Target>

<Target Name="Configure2">
<Message Importance="high" Text="Bobby = $(Bobby)" />
</Target>

<Target Name="Test2">
<CreateProperty Value="B3">
<Output PropertyName="Bobby" TaskParameter="Value"/>
</CreateProperty>
<Message Importance="high" Text="Bobby = $(Bobby)" />
</Target>

</Project>
And this is the output:
Target Test:
Bobby = Default
Target Test2:
Bobby = B3
Bobby = Default
Target Configure2:
Bobby = B3
Bobby = Default
It beats me why on the first level it's always default, but on the second level it's B3. Please note that Configure2 target is NOT settings this property, still it's Default before and after its invocation, but B# inside it. There must be something basic about this that I don't understand, so I'd appreciate any help.
//Andrew


Answer this question

Property visibility problem