0
假设下面的视图模型定义:的Silverlight XAML:引用代码隐藏类
public class MyObject {
public string Name { get; set; }
}
public interface IMyViewModel {
ICommand MyCommand { get; }
IList<MyObject> MyList { get; }
}
并用下面的代码后面的用户控件:
public class MyView : UserControl {
public IMyViewModel Model { get; }
}
如果我的XAML看起来像这样:
<UserControl>
<ListBox ItemsSource="{Binding MyList}">
<ListBox.ItemTemplate>
<TextBlock Text="{Binding Name}" />
<Button Content="Execute My Command" cmd:Click.Command="{Binding Path=MyCommand, ?????????}" cmd:Click.CommandParameter="{Binding}" />
</ListBox.ItemTemplate>
</ListBox>
我如何可以绑定我Button
到我的代码隐藏类的ICommand
财产?
我使用棱镜和SL 3.0,我需要每个按钮在我的列表框绑定到相同的命令在我视图模型。
之前我UserControl
有一个特殊的名字,我是能够使用ElementName
约束力,但现在我的UserControl
在同一父视图多次使用,所以我不能使用这种技术了,我想不通如何在XAML中做到这一点。
如果是我唯一的选择,我可以在做手工代码隐藏,但我宁愿做声明在XAML,如果可能的话。
这就是为什么我爱计算器... – TravisWhidden 2010-05-24 23:54:48