我在MainPage.xaml中有一个ToggleButton:
<ToggleButton x:Name="ColorToggle" Background="{Binding Background, ElementName=LayoutRoot}" ToolTipService.ToolTip="Change Toolbar Color">
...当我尝试从MainPage.xaml.cs访问它时:
private void SaveAppBarColorSelected(object sender, TappedRoutedEventArgs e)
{
PhotraxUtils.SetLocalSetting(PhotraxConsts.APPBARBUTTON_COLOR, ColorToggle.Background.ToString());
}
...我明白了,“当前上下文中不存在'ColorToggle'这个名称”
为什么?
答案 0 :(得分:1)
在代码隐藏中只能使用根上下文中的控件。如果将命名控件放在模板中,它将无法使用。在这种情况下,您可以使用VisualTreeHelper
和其他方法遍历控件树。
或者更好的是,只需使用MVVM。