InputScope 依赖项 属性、XAML 设计器问题 + 错误
InputScope dependency property, XAML designer problems + errors
我有一个由按钮和文本框组成的控件。
我想设置文本框的输入范围,所以我引入了一个新的依赖属性:
public InputScope InputScope
{
get { return (InputScope)GetValue(InputScopeProperty); }
set { SetValue(InputScopeProperty, value); } // Notify prop change
}
public static readonly DependencyProperty InputScopeProperty =
DependencyProperty.Register(nameof(InputScope), typeof(InputScope), typeof(SearchControl), new PropertyMetadata(DependencyProperty.UnsetValue));
在XAML中:
<controls:SearchControl InputScope="Number" /> <!-- etc... -->
(很明显是把它赋给了这个自定义控件样式的文本框的InputScope属性)
我的问题: 虽然这有效,但聚焦时会显示数字键盘,但我在 XAML 中有蓝色下划线,还有一条错误消息: "InputScope" 的 TypeConverter 不支持从字符串转换。
有没有办法修复它而无需肮脏的黑客攻击?
Is there a way to fix it without a dirty hack?
您可以实现类型转换器。请参阅 Tim Heuer 的博客 post 以获取更多信息和示例:
在 UWP 中实现类型转换器 XAML: http://timheuer.com/blog/archive/2017/02/15/implement-type-converter-uwp-winrt-windows-10-xaml.aspx
您可能还想阅读这篇文章:
WinRT Replacement for System.ComponentModel.TypeConverter
我有一个由按钮和文本框组成的控件。
我想设置文本框的输入范围,所以我引入了一个新的依赖属性:
public InputScope InputScope
{
get { return (InputScope)GetValue(InputScopeProperty); }
set { SetValue(InputScopeProperty, value); } // Notify prop change
}
public static readonly DependencyProperty InputScopeProperty =
DependencyProperty.Register(nameof(InputScope), typeof(InputScope), typeof(SearchControl), new PropertyMetadata(DependencyProperty.UnsetValue));
在XAML中:
<controls:SearchControl InputScope="Number" /> <!-- etc... -->
(很明显是把它赋给了这个自定义控件样式的文本框的InputScope属性)
我的问题: 虽然这有效,但聚焦时会显示数字键盘,但我在 XAML 中有蓝色下划线,还有一条错误消息: "InputScope" 的 TypeConverter 不支持从字符串转换。
有没有办法修复它而无需肮脏的黑客攻击?
Is there a way to fix it without a dirty hack?
您可以实现类型转换器。请参阅 Tim Heuer 的博客 post 以获取更多信息和示例:
在 UWP 中实现类型转换器 XAML: http://timheuer.com/blog/archive/2017/02/15/implement-type-converter-uwp-winrt-windows-10-xaml.aspx
您可能还想阅读这篇文章:
WinRT Replacement for System.ComponentModel.TypeConverter