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 に答える