UWP 开发问题



我正在开发UWP应用程序,并希望通过代码为GridViewListView设置2列。

法典:

GridView ^gView = ref new GridView();
ListView ^lView = ref new ListView();

我找不到任何代码或文档如何以编程方式执行此操作。谢谢。

是的,我想要 2 列用于网格。例如,第一列是属性,第二列是数据。如何通过代码实现它。

我不明白你为什么要以编程方式做。通常,直接在 XAML 页面上自定义其数据模板很容易。例如:

<GridView ItemsSource="{Binding xx}">
        <GridView.ItemTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition></ColumnDefinition>
                        <ColumnDefinition></ColumnDefinition>
                    </Grid.ColumnDefinitions>
                    <TextBlock Grid.Column="0" Text="{Binding property}"></TextBlock>
                    <TextBlock Grid.Column="1" Text="{Binding data}"></TextBlock>
                </Grid>
            </DataTemplate>
        </GridView.ItemTemplate>
</GridView>

如果必须以编程方式指定数据模板,则可以执行以下操作:

<Page.Resources>
    <DataTemplate x:Key="datatemplate">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition></ColumnDefinition>
                <ColumnDefinition></ColumnDefinition>
            </Grid.ColumnDefinitions>
            <TextBlock Grid.Column="0" Text="{Binding property}"></TextBlock>
            <TextBlock Grid.Column="1" Text="{Binding data}"></TextBlock>
        </Grid>
    </DataTemplate>
</Page.Resources>
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <GridView x:Name="gd" ItemsSource="{Binding}">
    </GridView>
</Grid>
public MainPage()
{
    this.InitializeComponent();
    gd.ItemTemplate = this.Resources["datatemplate"] as DataTemplate;
}

这是 C# 代码,您需要将其转换为 C++。

相关内容

最新更新