我需要在xaml中设置CustomMessageBox的DataTemplate,如下所示:
<Grid.Resources>
<DataTemplate x:Key="CustomMessageBoxTemplate">
<phone:LongListSelector
LayoutMode="Grid"
ItemsSource="{Binding}"
GridCellSize="210 200"
toolkit:TiltEffect.IsTiltEnabled="True"
ItemTemplate="{StaticResource ItemTemplate}" />
</DataTemplate>
</Grid.Resources>
我正试图在我的代码背后使用它,就像这样:
CustomMessageBox messageBox = new CustomMessageBox()
{
Caption = "Title",
DataContext = myList,
ContentTemplate = (DataTemplate)this.LayoutRoot.Resources["CustomMessageBoxTemplate"],
LeftButtonContent = "OK"
};
messageBox.Show();
其中myList被正确设置为List(我通过调试进行了检查)。
但问题是我的DataContext没有更改,并且CustomMessageBox中的LongListSelector保持未填充状态。
我不知道我在哪里犯了错误。我试着搜索如何做,但没有发现任何有用的东西。
谢谢你的帮助!
ContentTemplate
内的xaml的DataContext
自动设置为Content
属性。尝试设置Content = myList