设置CustomMessageBox的DataContext

时间:2013-12-09 12:41:18

标签: xaml windows-phone-7 windows-phone-8 datacontext windows-phone-toolkit

我需要在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仍未填充。

我不知道我在哪里弄错了。我试图搜索如何做,但我没有找到任何帮助。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

DataContext内的xaml ContentTemplate会自动设置为Content属性。尝试设置Content = myList