C# 如何在windows通用应用程序中动态创建HubSection

C# 如何在windows通用应用程序中动态创建HubSection,c#,xaml,windows-store-apps,win-universal-app,C#,Xaml,Windows Store Apps,Win Universal App,我有一个ObservableCollection,其中包含许多对象,这些对象取决于用户与应用程序的交互 我想将每个对象表示为HubSection,因为我不知道对象的数量,所以必须从视图的代码后面动态生成HubSections 在视图的代码隐藏(xaml.cs文件)中,我创建了一个遍历集合的循环,并在每次迭代中开始创建HubSection for (int i = 0; i < list_size; i++) { tempHubSection = ne

我有一个
ObservableCollection
,其中包含许多对象,这些对象取决于用户与应用程序的交互

我想将每个对象表示为
HubSection
,因为我不知道对象的数量,所以必须从视图的代码后面动态生成HubSections

在视图的代码隐藏(xaml.cs文件)中,我创建了一个遍历集合的循环,并在每次迭代中开始创建HubSection

for (int i = 0; i < list_size; i++)
        {
            tempHubSection = new HubSection();
            tempHubSection.Header = vm.MyCollection[i].Name;
            DataTemplate dt = new DataTemplate();
            ???
            mainHub.Sections.Add(tempHubSection);
        }
for(int i=0;i
但我对如何创建DataTemplate并在其中插入网格感到有点困惑,例如:

<HubSection Width="700" Header="object-1">
      <DataTemplate>
                <Grid>
                        ...
                </Grid>
       </DataTemplate>
</HubSection>

...

谢谢。

将您的
DataTemplate
代码移动到
app.xaml
文件的参考资料部分,给出名称,例如
myTemplate

  <DataTemplate  x:Key="myTemplate">
            <Grid>
                    ...
            </Grid>
   </DataTemplate>
mainHub.Template = (ControlTemplate)App.Current.Resources["myTemplate"];