2012-07-13 139 views
0

我有以下XAML代碼:訪問XAML對象代碼隱藏

<TextBlock x:Name="Coordinates" Text="{Binding Coors}"/> 

如何從代碼隱藏訪問該對象?我試圖取代Locaton硬編碼的座標,用「文本」的內容:

private void DestinationButton_Click(object sender, RoutedEventArgs e) 
{ 
    Location loc= new Location (20.2127297,-87.4625591); 
    myMap.Center = loc; 
    myMap.ZoomLevel = 8; 
} 
+0

只需使用變量「庫爾斯」。由於您的文本值綁定到該變量,它將保持與您的控件相同的值。 – 2012-07-13 20:32:40

+0

我同意李。只要確保您在TextBlock上使用INotifyPropertyChanged,以便該屬性始終保持最新狀態(無論是更新它)。 – Xcalibur37 2012-07-13 21:04:58

+0

如果我沒有使用任何綁定,該怎麼辦?如果它只是文本=「一些文本」? – MXV 2012-07-13 21:22:19

回答

1

因爲你已經有一個X提供它:名稱,你應該體健訪問爲「座標」 。

var text = Coordinates.Text; 
    var parsedLocation = <parsing logic here - use a Regex> 
    myMap.Center = parsedLocation; 

也有趣 - 看看名稱和X之間的區別:名稱here

但李在上面的評論是正確的。你應該使用「Coors」屬性來達到這個值,因爲它已經是數據綁定了。

+0

我如何在我的按鈕上下文中使用它?我想使用Coordinates.text的內容而不是「20.2127297,-87.4625591」 private void DestinationButton_Click(object sender,RoutedEventArgs e) { Location loc = new Location(20.2127297,-87.4625591); myMap.Center = loc; myMap.ZoomLevel = 8; } – MXV 2012-07-13 21:17:23

+0

查看我上面的編輯。 – Ani 2012-07-13 21:25:25

+0

不幸的是,它說「座標在當前上下文中不存在」...我是否需要添加任何內容到「DestinationButton_Click(object sender,RoutedEventArgs e)」? – MXV 2012-07-13 23:47:11