2012-07-13 77 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