如何让它将用户控件置于图钉位置的中心位置,而不是在图钉图标的内部和相对位置?
我尝试对齐底部并给控件留出余量。
谢谢,
答案 0 :(得分:6)
Pushpin
有一个名为PositionOrigin
的属性,用于指定实际位置点相对于Pushpin
图形的位置。例如,设置PositionOrigin="0.5, 0.5"
会导致整个图钉元素居中于实际位置。
我不确定这对您是否有用,因为您的问题的措辞意味着您希望保留现有的Pushpin图形但转换放置在Content中的用户控件。
答案 1 :(得分:3)
使用RenderTransform中的TranslateTransform偏移内容宽度和高度的一半。
例如,在Car Finder中(当它最终通过认证时),我使用十字准线图标来表示用户的当前位置,即38x38路径,因此偏移量为-19 / -19:
<ControlTemplate x:Key="LocationPushpin" TargetType="maps:Pushpin">
<Path Data="M50 0C22.43 0 0 22.43 0 50c0 27.569 22.43 50 50 50s50-22.431 50-50C100 22.43 77.57 0 50 0z M54.032 91.737V78.226h-8.064 v13.512C26.057 89.829 10.171 73.943 8.263 54.032h13.512v-8.064H8.263c1.909-19.911 17.794-35.796 37.705-37.705v13.511h8.064 V8.263c19.911 1.908 35.797 17.793 37.705 37.705H78.226v8.064h13.512C89.829 73.943 73.943 89.829 54.032 91.737z"
Fill="#000000"
Height="38"
Stretch="Uniform"
Width="38">
<Path.RenderTransform>
<TranslateTransform X="-19" Y="19" />
</Path.RenderTransform>
</Path>
</ControlTemplate>