【发布时间】:2016-11-22 12:41:06
【问题描述】:
我正在使用 Wpf,并且在 xaml 中将 List<Value> 传递给 <ItemsControl>。我想将Value 对象中的string 绑定到按钮的命令。此 xaml 部分如下所示:
<Grid Margin="0,0,2,0">
<Grid Margin="10">
<ItemsControl Name="details">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid Margin="0,0,0,5">
<Grid.ColumnDefinitions>
....
</Grid.ColumnDefinitions>
...
<Button Grid.Column="2"
Content="{Binding ButtonContent}"
Visibility="{Binding ButtonVisibility}"
Command="{Binding ButtonClickMethod}" />
...
我的Value 班级如下所示:
public class Value
{
...
public string ButtonClickMethod { get; set; }
}
我正在设置字符串链接:
v.ButtonClickMethod = "RelatedActivityId_OnClick";
并且Method在同一个类中,看起来像这样:
private void RelatedActivityId_OnClick(object sender, RoutedEventArgs e)
{
MessageBox.Show("RelatedActivityId_OnClick");
}
除此之外的一切都正常工作,并取消绑定相同的对象。 我做错了什么?
【问题讨论】:
-
那么字符串
ButtonClickMethod包含要执行的方法的名称? -
是的,我刚刚添加了更多代码
标签: c# wpf xaml button datatemplate