C# 为什么没有';找不到正确的标签(标签为空)?
今天我已经问了一个问题,为什么我会在这段代码中出现异常(请查看)。现在我不再得到异常,但它返回的标签为null(它不返回标签)。如需更多问题,请随时提问 如果我调试代码并打开grid.children,我将获得以下路径:C# 为什么没有';找不到正确的标签(标签为空)?,c#,.net,wpf,lync,C#,.net,Wpf,Lync,今天我已经问了一个问题,为什么我会在这段代码中出现异常(请查看)。现在我不再得到异常,但它返回的标签为null(它不返回标签)。如需更多问题,请随时提问 如果我调试代码并打开grid.children,我将获得以下路径: grid.children --> not open members (in German it says: "nicht öffentliche member") --> _visualChildren --> not open members -->
grid.children --> not open members (in German it says: "nicht öffentliche member") --> _visualChildren --> not open members --> _items --> _my label i want to get_
我的代码:
for (int i = 0; i < numberOfBooks; i++)
{
Grid grid = new Grid();
RowDefinition row = new RowDefinition();
ColumnDefinition column = new ColumnDefinition();
ColumnDefinition column2 = new ColumnDefinition();
ColumnDefinition column3 = new ColumnDefinition();
Label label = new Label();
label.Content = Books[i].Titel;
downGrid.RowDefinitions.Add(row);
grid.ColumnDefinitions.Add(column);
grid.ColumnDefinitions.Add(column2);
grid.ColumnDefinitions.Add(column3);
Grid.SetRow(label, i);
Grid.SetColumn(label, 0);
Grid.SetRow(grid, i);
upperGrid.Children.Add(grid);
grid.Children.Add(label);
grid.MouseLeftButtonDown += (sen, evg) =>
{
Label lbl = grid.Children.OfType<Label>().FirstOrDefault(k => .Name=="label");
string result = lbl?.Name;
Console.WriteLine(result);
};
}
for(int i=0;i
{
Label lbl=grid.Children.OfType().FirstOrDefault(k=>.Name==“Label”);
字符串结果=lbl?.Name;
控制台写入线(结果);
};
}
您可以在标签上搜索名为“label”的标签
Label lbl=grid.Children.OfType().FirstOrDefault(k=>.Name==“Label”);
但是在创建它之后,您忘记给它命名了您在标签上搜索一个名为“label”的标签
Label lbl=grid.Children.OfType().FirstOrDefault(k=>.Name==“Label”);
但是你在创建它之后忘记给它命名了天哪,我真不敢相信我会那么愚蠢。我找了两个小时的故障。。。非常感谢你!我想,这个名字是我在做一个例子的时候给标签的名字。你知道吗,如果你知道我的意思的话,我怎么能在标签上搜索它的变量名。这是不可能的,因为可能有很多(也没有)变量指向特定的标签。要在变量名之后命名它,你可以使用
label.name=nameof(label)
OMG,我真不敢相信我这么愚蠢。我找了两个小时的故障。。。非常感谢你!我想,这个名字是我在做一个例子的时候给标签的名字。你知道吗,如果你知道我的意思,我如何搜索标签的变量名。这是不可能的,因为可能有许多(也可能是零个)变量指向特定的标签要在变量名之后命名,你可以使用label.name=nameof(label)
Label lbl = grid.Children.OfType<Label>().FirstOrDefault(k => .Name=="label");