我在VS项目中的两个文件:Custom.xaml
和Custom.cs
访问XAML从C#隐藏代码控制
在我XAML文件,我有以下文本框:
<TextBox x:Name="TextBox1" Text="{Binding Value, Mode=TwoWay}" Foreground="Black" Background="Green" SelectionChanged="TextBox1_SelectionChanged" />
<TextBox x:Name="TextBox2" Text="{Binding Value, Mode=TwoWay}" Foreground="Black" Background="Green" SelectionChanged="TextBox2_SelectionChanged" />
在我的.cs,我有以下方法:
void TextBox1_SelectionChanged(object sender, RoutedEventArgs e)
{
TextBox t = e.Source as TextBox
}
我可以帅客完美地击中上面的事件处理程序。然后,我可以通过使用e.Source
来获取TextBox1
及其属性,但我想访问TextBox2及其属性。
一点题外话,在的.cs文件只是一个C#
类,我引用,而不是一个xaml.cs。另外,据我所知,我可以通过UserControl来实现此功能,但由于本篇文章范围之外的原因,在这种情况下不能这样做。
请告知我如何获得/设置TextBox2
的属性。
谢谢。
编辑:任何其他输入?作为解决方法,我添加了一个名为TextBox2_Loaded的事件处理程序,然后将e.Source设置为实例变量。然后,在TextBox1_SelectionChanged中,我可以访问实例变量。真的很想直接定位控件(例如TextBox2.IsEnabled)。我必须错过某处的声明或继承。甚至找不到使用FindName的控件。
你是否使用textbox2作为重复控件(gridview,listview..etc)的项目? – 2012-03-03 19:30:50
不,我没有使用gridview或listview – Josh 2012-03-03 19:43:11