Bạn có thể tạo điểm như vậy của GridView
bằng cách thiết lập ItemsPanel
-WrapPanel
, bạn có thể nhận WrapPanel
trên Jerry Nixon's blog. Đây là mã.
XAML
<GridView x:Name="gv">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<local:WrapPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</GridView.ItemsPanel>
<GridView.ItemTemplate>
<DataTemplate>
<Grid Height="140" Width="{Binding MyWidth}">
<Grid.Background>
<SolidColorBrush Color="{Binding MyColor}" />
</Grid.Background>
<TextBlock FontSize="20" VerticalAlignment="Bottom" Margin="10,0,0,10">
<Run Text="{Binding MyWidth}" />
</TextBlock>
</Grid>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
C#
protected override void OnNavigatedTo(NavigationEventArgs e)
{
var list = new List<ViewModel>()
{
new ViewModel(110, Colors.LawnGreen),
new ViewModel(50, Colors.DarkBlue),
new ViewModel(130, Colors.Firebrick),
new ViewModel(60, Colors.RosyBrown),
new ViewModel(100, Colors.IndianRed),
new ViewModel(210, Colors.BurlyWood),
new ViewModel(150, Colors.Turquoise)
};
gv.ItemsSource = list;
}
public class ViewModel
{
public double MyWidth { get; set; }
public Color MyColor { get; set; }
public ViewModel(double _MyWidth, Color _MyColor)
{
MyWidth = _MyWidth;
MyColor = _MyColor;
}
}
Có thể hữu ích [Làm thế nào để có được GridView với các mục có kích thước GridView có kích thước thay đổi?] (http://stackoverflow.com/questions/16843050/how-to-get-gridview-with-variable-sized-gridview-items) – Xyroid
@Xyroid Cảm ơn, Nhưng bạn đã cung cấp liên kết cho GridView được nhóm. Tôi đang tìm GridView chính nó mà không cần nhóm. – asitis
Ok, tôi sẽ đăng giải pháp cho điều đó. – Xyroid