2014-07-22 64 views
1

如何使用ModelItemPath對象(或任何對象)上設置Attached Property通過型號項目附加屬性

當然附加屬性的Properties收集ModelItem中沒有上市,所以我不能使用普通的語法:

myModelItem.Properties["MyAttachedProperty"].ComputedValue = newValue; 

監守MyAttachedProperty不屬於集合。

我該如何達到這個結果?

回答

1

這可以通過使用PropertyIdentifier來完成。

舉例Canvas.Left屬性:

var canvasLeftIdentifier = new Microsoft.Windows.Design.Metadata.PropertyIdentifier(typeof(System.Windows.Controls.Canvas), "Left"); 
myModelItem.Properties[canvasLeftIdentifier].SetValue(newValue); 
+0

這是偉大的!謝謝。 你是如何得到這個解決方案的?我搜索了所有的互聯網,但從來沒有找到關於如何使用模型項目的好文檔。您能否給我建議一些能夠幫助我深入瞭解該主題的內容? – rPulvi

+1

很高興能幫到你!我相信我和你一樣,在互聯網上找不到任何東西。最後,我找到了一位解決我問題的同事。他不記得他是如何找到解決方案的,所以我很遺憾無法幫助你更深入地理解這個話題。 – Egenskaper