3

我需要在 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 保持无人值守。

我不知道我在哪里犯了错误。我试图搜索如何做到这一点,但我没有发现任何有用的东西。

谢谢你的帮助!

4

1 回答 1

0

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

于 2013-12-09T15:15:11.503 回答