我正在尝试将一组项目绑定到windowcommands
metrowindow
。下面是xaml片段。
<metro:MetroWindow.WindowCommands>
<metro:WindowCommands ItemsSource="{Binding WindowCommands}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button Content="{Binding DisplayName}"
Command="{Binding Callback}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</metro:WindowCommands>
</metro:MetroWindow.WindowCommands>
但它不显示DisplayName
属性,而是显示有界数据类型的类型名称。我怎样才能达到预期的行为?
答案 0 :(得分:1)
如果您将模板作为资源添加到MetroWindow,则可以使用。为此,您需要创建一个具有Label和Callback属性的WindowCommandViewModel。
<metro:MetroWindow.Resources>
<DataTemplate DataType="{x:Type viewModels:WindowCommandViewModel}">
<Button Content="{Binding DisplayName}"
Command="{Binding Callback}"/>
</DataTemplate>
</metro:MetroWindow.Resources>