2

我似乎无法删除将在运行时生成的按钮。

这是生成按钮的代码:

void testArea(Object s, RoutedEventArgs e)
    {
        System.Windows.Controls.Button myButton = new System.Windows.Controls.Button();
        myButton.Name = "runtimeGeneratedButton";
        myButton.Content = "deleteMe";
        myButton.Click+= new RoutedEventHandler(deleter);
        operationsPannel.Children.Add(myButton);
    }

这是应该删除生成的按钮的代码:

private void deleter(object s, RoutedEventArgs args)
    {
        operationsPannel.Children.Remove(operationsPannel.FindName("runtimeGeneratedButton") as System.Windows.Controls.Button);
    }
4

1 回答 1

1

对于您在代码中创建的控件,如果要按名称查找它们,则需要RegisterName在当前名称范围内:

operationsPannel.Children.Add(myButton);
operationsPannel.RegisterName("runtimeGeneratedButton", myButton);

这是由 XAML 解析器自动完成的

于 2013-08-16T10:04:19.647 回答