Windows store apps 是否在Windows应用商店应用程序中访问中心区域的内部元素?

Windows store apps 是否在Windows应用商店应用程序中访问中心区域的内部元素?,windows-store-apps,windows-store,Windows Store Apps,Windows Store,如何在C#代码隐藏中设置ListView itemSource?Hun节中的元素不能通过名称访问 <Hub x:Name="RootHub" SectionHeaderClick="Hub_SectionHeaderClick"> <Hub.Header> <!-- Back button and page title --> <Grid> <Gr

如何在C#代码隐藏中设置ListView itemSource?Hun节中的元素不能通过名称访问

<Hub x:Name="RootHub" SectionHeaderClick="Hub_SectionHeaderClick">
        <Hub.Header>
            <!-- Back button and page title -->
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="80"/>
                    <ColumnDefinition Width="*"/>
                </Grid.ColumnDefinitions>
                <Button  x:Name="backButton" Style="{StaticResource NavigationBackButtonNormalStyle}"
                    Margin="0,0,39,0" 
                    VerticalAlignment="Top"
                    Command="{Binding NavigationHelper.GoBackCommand, ElementName=pageRoot}"
                    AutomationProperties.Name="Back"
                    AutomationProperties.AutomationId="BackButton"
                    AutomationProperties.ItemType="Navigation Button"/>
                <TextBlock x:Name="pageTitle" Text="{StaticResource AppName}" Style="{StaticResource HeaderTextBlockStyle}" Grid.Column="1" 
                    VerticalAlignment="Top" IsHitTestVisible="false" TextWrapping="NoWrap" />
            </Grid>
        </Hub.Header>
        <HubSection Width="500" x:Name="OperationSection" Header="Operation">
            <DataTemplate>
                <Grid Height="535">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="Auto" MinHeight="92" />
                        <RowDefinition />
                    </Grid.RowDefinitions>
                    <SearchBox Margin="0,0,50,394"/>
                    <Image Source="Images/plus.png" Margin="375,6,4,394"/>
                    <ListView x:Name="OperationListView" ItemsSource="{Binding Operation}" HorizontalAlignment="Left" Height="453" VerticalAlignment="Top" Width="410" Margin="6,72,0,0" Grid.RowSpan="2">
                        <!--<ListView.ItemTemplate>
                            <DataTemplate>
                                <TextBlock x:Name="DataItem" Text="{Binding opId}" />

                            </DataTemplate>
                        </ListView.ItemTemplate>-->
                        <ListBoxItem>
                        <StackPanel Orientation="Vertical">
                            <TextBlock Text="OP : 0001" Width="auto" Height="30" FontSize="20"></TextBlock>
                                <TextBlock Text="Replace Transformer" Width="auto" Height="30" FontSize="20"></TextBlock>
                        </StackPanel>
                        </ListBoxItem>
                        <ListBoxItem>
                        <StackPanel Orientation="Vertical">
                                <TextBlock Text="OP : 0002" Width="auto" Height="30" FontSize="20"></TextBlock>
                                <TextBlock Text="Install New Pole" Width="auto" Height="30" FontSize="20"></TextBlock>
                        </StackPanel>
                        </ListBoxItem>
                        <ListViewItem>
                        <StackPanel Orientation="Vertical">
                                <TextBlock Text="OP : 0003" Width="auto" Height="30" FontSize="20"></TextBlock>
                                <TextBlock Text="Check Equipments" Width="auto" Height="30" FontSize="20"></TextBlock>
                        </StackPanel>
                        </ListViewItem>
                    </ListView>
                </Grid>
            </DataTemplate>
        </HubSection>
        <HubSection Width="500" x:Name="ComponentSection" Header="Component">
            <DataTemplate>
                <Grid Height="535">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="Auto" MinHeight="92" />
                        <RowDefinition />
                    </Grid.RowDefinitions>
                    <SearchBox Margin="0,0,50,394"/>
                    <Image Source="Images/plus.png" Margin="375,6,4,394"/>
                    <ListView x:Name="OperationListView" ItemsSource="{Binding Operation}" HorizontalAlignment="Left" Height="453" VerticalAlignment="Top" Width="410" Margin="6,72,0,0" Grid.RowSpan="2">
                    <ListBoxItem>
                            <StackPanel Orientation="Vertical">
                                <TextBlock Text="COM : 0001" Width="auto" Height="30" FontSize="20"/>
                                <TextBlock Text="Transformer" Width="auto" Height="30" FontSize="20"/>
                            </StackPanel>
                        </ListBoxItem>
                        <ListBoxItem>
                            <StackPanel Orientation="Vertical">
                                <TextBlock Text="COM : 0002" Width="auto" Height="30" FontSize="20"/>
                                <TextBlock Text="Pole" Width="auto" Height="30" FontSize="20"/>
                            </StackPanel>
                        </ListBoxItem>
                        <ListViewItem>
                            <StackPanel Orientation="Vertical">
                                <TextBlock Text="COM : 0003" Width="auto" Height="30" FontSize="20"/>
                                <TextBlock Text="Grid" Width="auto" Height="30" FontSize="20"/>
                            </StackPanel>
                        </ListViewItem>
                    </ListView>
                </Grid>
            </DataTemplate>
        </HubSection>
        <HubSection Width="500" x:Name="EquipmentSection" Header="Equipment">
            <DataTemplate>
                <Grid Height="535">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="Auto" MinHeight="92" />
                        <RowDefinition />
                    </Grid.RowDefinitions>
                    <SearchBox Margin="0,0,50,394"/>
                    <Image Source="Images/plus.png" Margin="375,6,4,394"/>
                    <ListView x:Name="OperationListView" ItemsSource="{Binding Operation}" HorizontalAlignment="Left" Height="453" VerticalAlignment="Top" Width="410" Margin="6,72,0,0" Grid.RowSpan="2">
                      <ListBoxItem>
                            <StackPanel Orientation="Vertical">
                                <TextBlock Text="EQ : 0001" Width="auto" Height="30" FontSize="20"/>
                                <TextBlock Text="Transformer" Width="auto" Height="30" FontSize="20"/>
                            </StackPanel>
                        </ListBoxItem>
                        <ListBoxItem>
                            <StackPanel Orientation="Vertical">
                                <TextBlock Text="EQ : 0002" Width="auto" Height="30" FontSize="20"/>
                                <TextBlock Text="Pole" Width="auto" Height="30" FontSize="20"/>
                            </StackPanel>
                        </ListBoxItem>
                        <ListViewItem>
                            <StackPanel Orientation="Vertical">
                                <TextBlock Text="EQ : 0003" Width="auto" Height="30" FontSize="20"/>
                                <TextBlock Text="Wire" Width="auto" Height="30" FontSize="20"/>
                            </StackPanel>
                        </ListViewItem>
                    </ListView>
                </Grid>
            </DataTemplate>
        </HubSection>
    </Hub>

这里是OperationListView中的硬编码列表项。但我想在C#中动态加载项。我怎样才能解决这个问题?
提前感谢。

问题的两个问题是,您已经将ListView绑定到名为Operation的属性。删除各个ListView项目,您的数据将显示出来。您还需要一个ListView.ItemTemplate来显示各个项目

数据绑定是一种方法,但是您也要为所有列表绑定到相同的属性,因此我假设您要为每个ListView绑定到不同的属性,否则每个HubSection将包含相同的项

如果不想使用数据绑定并加载代码中的项,可以使用ListView的Loaded事件

<ListView x:Name="OperationListView" Loaded="OperationsLoaded">
</ListView>
希望有帮助

private void OperationsLoaded(object sender, RoutedEventArgs e)
{
  var listView = (ListView)sender;
  listView.ItemsSource = youritems;
}