2013-02-28 158 views
0
<Canvas Background="Black"> 
     <Rectangle Fill="Salmon" Name="selBox" Width="100" Height="100" Margin="657,175" /> 
     <Button x:Name="btnAnimate" Content="Animate" HorizontalAlignment="Left" Margin="721,422,0,0" VerticalAlignment="Top" Click="btnAnimate_Click" /> 
</Canvas> 

是我的XAML。我已經寫了,在MainPage.xaml.cpp文件爲什麼Canvas :: GetLeft總是返回0?

void App1::MainPage::btnAnimate_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e) 
{ 
    auto x = Canvas::GetLeft(selBox); 
} 

當調試應用程序,我總是得到0.00對於x。爲什麼這樣?還是有一些關於父母的翻譯?我也嘗試命名畫布myCanvas,並做了myCanvas->GetLeft(selBox);,我仍然得到相同的。

回答

1

你有什麼你寫的:你沒有在你的Rectangle上設置Canvas.Left,它默認爲0。保證金影響最終佈局,但不影響Canvas.Left或Right或任何其他兩個。

+0

哇,謝謝!做'selBox-> Margin.Left'給出正確的(我的意思是正確的)值:) – legends2k 2013-02-28 14:02:00

相關問題