4
在Silverlight 3.0中,我在代碼隱藏中的某些UIElement
上添加了自定義行爲。如何在Silverlight的代碼隱藏中從UIElement中分離行爲?
我想稍後在運行時刪除行爲。
將已添加的行爲從UIElement
中分離出來的C#語法是什麼?
在Silverlight 3.0中,我在代碼隱藏中的某些UIElement
上添加了自定義行爲。如何在Silverlight的代碼隱藏中從UIElement中分離行爲?
我想稍後在運行時刪除行爲。
將已添加的行爲從UIElement
中分離出來的C#語法是什麼?
我猜你是在談論一個行爲從混合SDK的Behavior<T>
類派生...
你仍然有從,當你連接到它的行爲的參考?
MyCustomBehavior myBehavior = new MyCustomBehavior();
myBehavior.Attach(myElement);
...
myBehavior.Detach();
編輯
如果你不再有行爲的實例的引用時要分離它,你可以做這樣的事情來分離在DependencyObject的所有行爲:
foreach (var behavior in Interaction.GetBehaviors(myElement))
{
behavior.Detach();
}
賓果!這是非常快速和正是我想要的。太感謝了 !!! – kanchirk 2010-02-25 03:32:03
Detach()後,Attach()不能將行爲重新附加或還原到依賴項對象。解? – KMC 2012-11-14 15:18:13