我正在开发UWP
应用程序,并希望通过代码为GridView
或ListView
设置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++。