我有一個WPF項目,我必須在畫布上創建幾個橢圓。我創建了兩個複選框,當我檢查第一個複選框時,紅色橢圓將顯示在畫布上。如果我取消選中第一個複選框,則橢圓將消失....第二個複選框將通過創建藍色橢圓而具有相同的功能。如何在添加單個畫布後刪除單個孩子?
所以繼承我的情況,當兩個複選框被選中時,會出現藍色和紅色的橢圓。要清除畫布上的橢圓,我使用myCanvas.children.clear()
。但是當我取消選中其中一個複選框時,這兩個橢圓將被刪除。
private void redCB_Checked(object sender, RoutedEventArgs e)
{
drawRedCircle();
}
private void redCB_Unchecked(object sender, RoutedEventArgs e)
{
myCanvas.Children.Clear();
}
private void blueCB_Checked(object sender, RoutedEventArgs e)
{
drawBlueCircle();
}
private void blueCB_Unchecked(object sender, RoutedEventArgs e)
{
myCanvas.Children.Clear();
}
private void drawRedCircle()
{
Ellipse myCircle = new Ellipse();
myCircle.Stroke = Brushes.Red;
myCircle.Width = 30;
myCircle.Height = 30;
myCircle.StrokeThickness = 2;
Canvas.SetLeft(myCircle, 10);
Canvas.SetRight(myCircle, 10);
Canvas.SetBottom(myCircle, 10);
Canvas.SetTop(myCircle, 10);
myCanvas.Children.Add(myCircle);
}
private void drawBlueCircle()
{
Ellipse myCircle = new Ellipse();
myCircle.Stroke = Brushes.Blue;
myCircle.Width = 30;
myCircle.Height = 30;
myCircle.StrokeThickness = 2;
Canvas.SetLeft(myCircle, 20);
Canvas.SetRight(myCircle, 20);
Canvas.SetBottom(myCircle, 20);
Canvas.SetTop(myCircle, 20);
myCanvas.Children.Add(myCircle);
}
在你的解決方案中,我不能在同一時間得到2個橢圓,對吧? – 0070
你可以看到更新@ 0070 –
當我編譯它時,出現錯誤:事件'System.Windows.Controls.Primitives.ToggleButton.Checked'只能出現在+ =或 - =的左側。 – 0070