Tho*_*que 10
您只需要调用 编辑:实际上,这不是真的...... ProvideValue绑定方法即可.困难的部分是你需要将有效IServiceProvider的方法传递给方法... ProvideValue返回一个BindingExpression,而不是绑定属性的值.
您可以使用以下技巧:
class DummyDO : DependencyObject
{
public object Value
{
get { return (object)GetValue(ValueProperty); }
set { SetValue(ValueProperty, value); }
}
public static readonly DependencyProperty ValueProperty =
DependencyProperty.Register("Value", typeof(object), typeof(DummyDO), new UIPropertyMetadata(null));
}
public object EvalBinding(Binding b)
{
DummyDO d = new DummyDO();
BindingOperations.SetBinding(d, DummyDO.ValueProperty, b);
return d.Value;
}
...
Binding b = new Binding("Foo.Bar.Baz") { Source = dataContext };
object value = EvalBinding(b);
Run Code Online (Sandbox Code Playgroud)
不是很优雅,但它有效......
| 归档时间: |
|
| 查看次数: |
4558 次 |
| 最近记录: |