[英]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.
}
你不能。 密封了 或者:
Arc
作為屬性的新類。 Arc.Tag
。 對於您的特定問題,我建議使用上面的#2或存儲Dictionary<Arc, blahblahblah>
或Dictionary<string, blahblahblah>
(按名稱),並查找所需的信息。 #1花費了很多開銷來包裝您繪制所需的所有方法和屬性,並且可能比它的價值還要麻煩。
您無法擴展密封的類別。
嘗試創建自己的類並將Arc作為類成員,並公開此成員函數。
最好的祝福。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.