好了,所以,这个问题看似简单的尴尬,但不知何故,我不出来,所以,我要问问也无妨......使用静态能见度枚举作为命令参数
我想用这个Visibility
在CommandParameter
KeyBinding
的(注意为<!--THIS LINE-->
部分)的方式:
<Window ...
xmlns:sys="clr-namespace:System;assembly=System"
...>
...
<Window.InputBindings>
</Window.InputBindings>
<Grid DataContext="{StaticResource MainWindowVM}">
...
<ScrollViewer Grid.Column="0" Grid.Row="1" Background="Gray">
<ScrollViewer.InputBindings>
...
<!--THIS LINE--><KeyBinding Key="OemOpenBrackets" Command="{Binding EditLeftBarLineVisibilityCommand}" CommandParameter="{x:Static sys:Visibility.Visible}"/>
<!--THIS LINE--><KeyBinding Key="OemCloseBrackets" Command="{Binding EditRightBarLineVisibilityCommand}" CommandParameter="{x:Static sys:Visibility.Visible}"/>
</ScrollViewer.InputBindings>
...
</ScrollViewer>
</Grid>
但是,它似乎是:
名称“可见性”并不命名空间中存在“CLR的命名空间:系统;装配=系统”
我看在我的VM Visibility
和它位于System.Windows
,但我不能发现在XAML上,(System
)是我找到的最接近的一个,结果不好。
任何人都知道在XAML中使用什么名称空间? (有中虽然列出的XAML没有System.Windows
,如果事实证明我没有提到它,我的虚拟机不能使用它,以及对不对?)
或者,是否有必要使用ObjectDataProvider
仅System
Enum
? (因为如果它是我自己的自定义枚举,我可以无缝地执行此操作)
P.S. MSDN:http://msdn.microsoft.com/en-us/library/system.windows.uielement.visibility%28v=vs.95%29.aspx
没有什么是“尴尬的简单”与WPF,尤其是当命令被卷入。 : -/ – 2014-10-11 16:03:22