当前屏幕上有多个ellipse画成的圆,如何获取某一个圆,让它的颜色改变?小菜刚接触WPF,请教高手。。谢谢。WPF依赖属性 ELLIPSE控件

解决方案 »

  1.   

    <Window x:Class="WpfTest.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="MainWindow" Height="350" Width="525" MouseUp="Window_MouseUp" >
        <Canvas>
            <Ellipse Width="30" Height="30" Fill="Red" Canvas.Left="46" Canvas.Top="41"/>
            <Ellipse Width="30" Height="30" Fill="Green" Canvas.Left="74" Canvas.Top="137"/>
            <Ellipse Width="30" Height="30" Fill="Blue" Canvas.Left="135" Canvas.Top="67"/>
        </Canvas>
    </Window>
    using System.Windows;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Shapes;namespace WpfTest
    {
        public partial class MainWindow : Window
        {
            public MainWindow()
            {
                InitializeComponent();
            }        private void Window_MouseUp(object sender, MouseButtonEventArgs e)
            {
                Ellipse ellipse = e.OriginalSource as Ellipse;
                if (ellipse != null) {
                    ellipse.Fill = new SolidColorBrush { Color = Colors.Gray };
                }
            }
        }
    }