Reputation: 640
I'm developing UWP
app and want to set 2 columns for GridView
or ListView
by code.
Code:
GridView ^gView = ref new GridView();
ListView ^lView = ref new ListView();
I can't find any code or documentation how to do it programmatically. Thanks.
Upvotes: 0
Views: 90
Reputation: 8591
Yes I want 2 columns for the Grid. For example first column is property, second - data. How to achieve it by code.
I could not understand why you want to do it programmatically. In general, customizing its DataTemplate on XAML page directly is easy. For example:
<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>
If you have to specify the DataTemplate programmatically, you could do like the following:
<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;
}
It's C# code, you would need to convert it to C++.
Upvotes: 1