我是Xaml开发的新手(WPF,Sliverlight,WP7)。
这是我的问题:
我有一个自定义按钮,当我点击它(长按或按住)时,我想打开一个与List相关的特定contextMenu。这意味着,由于我们点击的按钮,menuItem标题有不同的文本。
以下是示例代码: 我的清单
public class ListTest
{
private List<string> testList;
public List<string> TestList
{
get { return testList; }
set { testList = value; }
}
public ListTest()
{
testList = new List<string>();
testList.Add("1st Header");
testList.Add("2nd Header");
testList.Add("3rd Header");
testList.Add("4th Header");
}
}
我的主页WP7
public MainPage()
{
InitializeComponent();
ListTest tst = new ListTest();
this.DataContext = tst.TestList;
}
我的XAML代码
<my:OwnButton IconSource="Image/beer.png" DrinkText="Beer" x:Name="btnBeer1">
</toolkit:GestureService.GestureListener>
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu ItemsSource="{Binding}">
<toolkit:ContextMenu.ItemTemplate>
<DataTemplate >
<toolkit:MenuItem Header="{Binding}" />
</DataTemplate>
</toolkit:ContextMenu.ItemTemplate>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
</my:OwnButton>
Acutally,我认为我的contextmenu menuitem会自动填充List,因为这个列表被设置为MainPage的DataContext。当我运行我的应用程序时,我的contextmenu是空的。帮助
答案 0 :(得分:0)
尝试将数据模板更改为:
<DataTemplate >
<toolkit:MenuItem Header="{Binding TestList}" />
</DataTemplate>