1

我正在研究 Silverlight。我有一个应用程序,我在UserControl_Loaded方法中创建多边形。在创建阶段,我添加 MouseLeftButtonUp 事件处理程序,如下所示:

polygon.MouseLeftButtonUp += MouseButtonEventHandler_MouseLeftButtonUp;

所有多边形都有相同的处理程序。

我的目标是在单击多边形时使用自定义对象。

例如,我有两个多边形;他们俩都有int MyCustomInt32财产。该属性是在创建阶段设置的。对于第一个多边形,它设置为 10,第二个多边形设置为 20。当事件触发时,我想检索并设置 MyCustomInt32 值。当然,值应该是不同的,这取决于我点击的是哪个多边形。

可以在 Silverlight 中进行吗?

谢谢你。

4

1 回答 1

1

您可以将 sender 参数转换为您的自定义类类型:-

private void MouseButtonEventHandler_MouseLeftButtonUp(object sender,  MouseButtonEventArgs e)
{
    var polygon = (MyCustomPolygon)sender;
    int x = polygon.MyCustomInt32;
}

编辑

针对您的评论,实际创建自定义控件实现的主题太广泛了。然而,网上有很多文章可供审查。几个例子是: -

通过简单的网络搜索“Custom Control Silverlight”可以找到更多内容。

于 2009-10-01T08:15:07.867 回答