2017-07-20 22 views
0

错误如下:按钮的名称属性不响应.CS呼叫

<Button x:Name="b1" Click="MainBclick()" Tag="1" Content="Setting Names"/> 
<Button x:Name="b4" Content="Setting Usages" Visibility="Collapsed"/> 

“B4” 的名字并不在当前的背景下

XAML存在C#:

private void MainBclick(object sender, RoutedEventArgs e) 
{ 
    var y = ((Button)sender).Tag; 
    int x = Convert.ToInt32(y); 

    if (x == 1) 
    { 
     b4.Visibility = Visibility.Visible; 
    } 
    else { }; 
} 

基本上,如果某个按钮被按下且其标签等于1,则更改此其他按钮的可见性。

在XAML中的代码“b4”的实际位给我错误。

回答

1

检查您的设计器文件已正确生成。

+0

xaml中可能存在一些语法问题,它不会给您编译时错误。 – summerGhost

+0

谢谢,我将复制粘贴代码到一个新的项目,以防万一。不幸的是,我也遇到了编译问题。 –

1

下面线是什么造成你一个问题:

<Button x:Name="b1" Click="MainBclick()" Tag="1" Content="Setting Names"/> 

你不能有 “()” 在事件处理方法名

改用:

<Button x:Name="b1" Click="MainBclick" Tag="1" Content="Setting Names"/> 
+0

做你的建议给了我更多的错误,但当伴随着一个新的设计师文件工作的一种享受。感谢您的调试:D –

1
<Button x:Name="b1" Click="MainBclick" Tag="1" Content="Setting Names"/> 

为我工作。从Click事件中删除()。

+0

非常感谢。我遇到了很多错误,以致于一个新的设计器文件伴随着您所建议的更改而使其工作。 ^^ –