我在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