我正在使用Silverlight 4来处理这篇文章。 link text
但我正在使用Silverlight 3.但是对于按钮,我们无法找到命令
Command =“{Binding Path = DataContext.GetPerson,ElementName = LayoutRoot}”
<Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="53,112,0,0" Name="button1"
VerticalAlignment="Top" Width="75" Command="{Binding Path=DataContext.GetPerson, ElementName= LayoutRoot }"
CommandParameter="{Binding Path=Age, ElementName=hi}" />
所以在Silverlight 3中我该怎么做才能获得按钮的这个Command属性
任何帮助都会很棒
答案 0 :(得分:0)
命令是将操作与控件(例如按钮)相关联的可绑定方式。 该命令控制着两件事:
实施ICommand界面
他们在WPF中已经存在了一段时间,并且最近被添加到SL4
如果希望代码在SL3中工作,则必须将IsEnabled属性绑定到视图模型中与该命令的CanExecute实现具有相同逻辑的属性。 并为具有相同逻辑的按钮添加Click事件处理程序具有命令的Execute
此外,此按钮将参数传递给命令(CommandParameter),您必须手动传递此参数
答案 1 :(得分:0)
您可以使用像prism这样的框架,将相关的dll添加到您的项目中,然后像这样添加对页面顶部的引用
xmlns:prism="clr-namespace:Microsoft.Practices.Composite.Presentation.Commands;assembly=Microsoft.Practices.Composite.Presentation"
然后在按钮上声明监狱属性
<Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="53,112,0,0" Name="button1"
VerticalAlignment="Top" Width="75" Command="{Binding Path=DataContext.GetPerson, ElementName= LayoutRoot }"
prism:Click.Command={Binding SomeCommand}
prism:Click.CommandParameter="{Binding Path=Age, ElementName=hi}" />