我可能需要的東西一定的幫助,我不能在這一點搞清楚:如何獲得GetBindingExpression目標反射
我需要(通過類不同RESX文件)來更新XAML的綁定在某具有特定名稱前綴的控件的事件。作爲對照有不同的類型,我也沒有知道同一頁面的外觀somewhen在未來,我想做到這一點,只有反思...
像
var meth1 = control.GetType().GetMethod("GetBindingExpression");
var meth2 = control.GetType().GetMethod("SetBinding");
BindingExpression be = (BindingExpression)meth1.Invoke(target, null);
Binding bind = be.ParentBinding;
meth2.Invoke(target, new object[] { bind });
似乎是正確的想法給我,但我無法弄清楚如何從一個DependencyObject的目標的DependencyProperty之前不知道的DependencyObject類型...
我敢肯定,我缺少的東西,而容易在這裏...
我知道我可以通過控件,只需將從ResourceManager對象獲得的新字符串輸入到文本屬性的控制,但在這種情況下,我會再次檢查文本,標題,任何屬性......如果可能的話,反射似乎只是對我來說更乾淨的方式。
爲什麼你不能將控件投射到FrameworkElement並直接使用方法而不是反射? – 2012-01-18 20:02:32