簡體   English   中英

如何向密封類Arc添加屬性

[英]How to add a property to the sealed class Arc

如何向密封的Arc類添加兩個新屬性。 我想擴展類,使其具有double屬性以容納double值,並具有string屬性以容納對象的名稱。 我的第一次嘗試是通過Tag屬性,但是它只能容納double值或對象名稱。

問題是我創建了一個帶有43個圓弧對象的新用戶控件,當鼠標進入圓弧時,另一個控件顯示了輸入段的值和名稱。 因此,每條弧線都使用SAME MouseEntered函數,我想通過“對象發送者”獲得信息。

我希望任何人都有一個好主意。

您可以使用復合模式。

class SuperArc
{
   Arc Arc { get; set; }
   // other properties.
}

你不能。 密封了 或者:

  1. 創建一個包含 Arc作為屬性的新類。
  2. 將元組或其他對象存儲在Arc.Tag
  3. 用屬性裝飾弧

對於您的特定問題,我建議使用上面的#2或存儲Dictionary<Arc, blahblahblah>Dictionary<string, blahblahblah> (按名稱),並查找所需的信息。 #1花費了很多開銷來包裝您繪制所需的所有方法和屬性,並且可能比它的價值還要麻煩。

您無法擴展密封的類別。

嘗試創建自己的類並將Arc作為類成員,並公開此成員函數。

最好的祝福。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM