1
3 열과 여러 행을 사용하여 GridView 형식으로 BoxViews를 추가하려고합니다. xaml을 사용하여 그리드를 정의하고 C# 파일에서 이라는 동작을 정의했습니다. 일어날 일은 BoxView가 컬럼 당 3 개의 이미지를 가진 같은 수의 이미지를 위해 만들어 져야한다는 것입니다.BoxViews를 동적으로 Grid에 추가 [Xamarin.Forms]
감사합니다,
XAML
<Grid RowSpacing="0" x:Name="scrollBarGrid">
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<!--Where the search bar will go-->
<BoxView BackgroundColor="Aqua" Grid.Row="0"/>
<SearchBar ></SearchBar>
<!--Where the images will go-->
<BoxView BackgroundColor="Gray" Grid.Row="1"/>
<Grid x:Name="imageGrid" RowSpacing="0" Grid.Row="1">
</Grid>
</Grid>
C#
public MainPage()
{
InitializeComponent();
int colMaximum = 3;
int numberOfImages = 15;
//To add three columns
for (int i = 0; i < colMaximum; i++)
{
imageGrid.ColumnDefinitions.Add(new ColumnDefinition()
{
Width = new GridLength(120, GridUnitType.Absolute)
});
}
//To add an array of rows
imageGrid.RowDefinitions = new RowDefinitionCollection();
for (int myCount = 0; myCount <= numberOfImages/colMaximum; myCount++)
{
imageGrid.RowDefinitions.Add(new RowDefinition()
{
Height = new GridLength(120, GridUnitType.Absolute)
});
//To add a new box view for each
for (int newcol = 0; newcol <= colMaximum; newcol++)
{
for (int newrow = 0; newrow <= numberOfImages/colMaximum; newrow++)
{
imageGrid.Children.Add(new BoxView() { BackgroundColor = Color.Red });
}
}
}
}
코드에 어떤 문제가 있습니까? 무엇을하지 않거나 잘못하고 있습니까? – Jason
안녕하세요 제이슨, 내가 원하는 것은 'numberOfImages'변수 (15 개)와 같은 양의 상자를 인쇄하는 것입니다. 페이지가 그리드 형식으로 표시해야하는 이미지의 양을 읽을 Instagram과 같은 UI를 만들려고합니다. 어쨌든, 이것을 성취 할 수있는 더 좋은 방법을 아시겠습니까? 감사합니다. – Noel625
요구 사항을 말하고 있지만 실제로 코드가 무엇입니까? 오류 또는 예외가 발생합니까? 잘못된 수의 항목이 인쇄됩니까? 전혀 아무것도합니까? – Jason