WPF\Silverlight 绑定属性:转换器问题
想通过绑定属性来实现:
一个控件的属性依赖另一个控件的属性, 比如设置控件1的可见性,可是控件2的可见性取控件1的反值。
实现了相应的转换器后,发现下面的XAML报错:
<TextBox Visibility="{Binding Converter={StaticResource SetVisibility}, ConverterParameter={Binding ElementName=btn1, Path=Visibility}}"/>
错误信息:
{System.Windows.Markup.XamlParseException: 对“System.Windows.Data.Binding”提供值时出现异常。 [Line: 28 Position: 29] ---> System.InvalidOperationException: 对象的当前状态使该操作无效。
位于 MS.Internal.XamlManagedRuntimeRPInvokes.TryApplyMarkupExtensionValue(Object target, XamlPropertyToken propertyToken, Object value)
位于 MS.Internal.XamlManagedRuntimeRPInvokes.SetValue(XamlTypeToken inType, XamlQualifiedObject& inObj, XamlPropertyToken inProperty, XamlQualifiedObject& inValue)
--- 内部异常堆栈跟踪的结尾 ---
位于 System.Windows.Application.LoadComponent(Object component, Uri resourceLocator)
位于 SlSytle.MainPage.InitializeComponent()
位于 SlSytle.MainPage..ctor()}
[解决办法]
应该为
<TextBox Visibility="{Binding ElementName=btn1,Path=Visibility,Converter={StaticResource SetVisibility}}"/>
[解决办法]