2013-07-06 67 views
0

我想通过名称以字符串的形式从XAML页面引用C#TextBlock。我希望能够在移动滑块后更改TextBlock的文本。我可以根据Slider的名称来计算TextBlock的名称。C#参考TextBlock的名称

我猜我应该以某种方式使用System.Refelection,但我无法弄清楚如何去做。我试过以下内容:

... 
     var slider = sender as Slider; 
     var textblock_Name = slider.Name.Replace("Rotation_Slider", "Rotation_TextBlock"); 
     var type = this.GetType(); 
     var field = type.GetField("xRotation_TextBlock"); 
     var textBlock = field.GetValue(this) as TextBlock; 
... 

但是我在第二行到最后一行得到一个空引用异常。我想我可能不应该试图引用一个领域,但我不知道它到底是什么。

+2

你需要什么是绑定,绑定和更具有约束力。你想实现什么?我是否假设你有一组滑块,并且你想要显示每个滑块的值? – dkozl

+0

这听起来不难,但名称在Xaml中有一些限制,您能描述一下您的演示策略,需要动态更改名称吗? –

回答