【发布时间】:2019-11-24 21:43:48
【问题描述】:
我有问题。我有一个 TabbedPage,带有 page1 和 page2。在 page2 上是一个带有一些图像的网格。当我单击图像时,我将图像添加到集合中,因此我在 page1 上使用了 OnChange。 在 page1 上,我想将新的图像添加到该页面上的 StackLayout。
到目前为止,这是我的代码: 这是page2代码:
private void LoadTemplateList()
{
string[] imageArray = { "Good_Question.png", "Excuse_Me.png"};
int imageIndex = 0;
for (var i = 0; i <= TemplateGrid.RowDefinitions.Count; i++)
{
if (i == 2)
{
for (var j = 0; j < TemplateGrid.ColumnDefinitions.Count; j++)
{
if (j == 1 || j == 3)
{
Image image = new Image { Source = imageArray[imageIndex], VerticalOptions = LayoutOptions.StartAndExpand };
var SelectImage = new TapGestureRecognizer();
SelectImage.Tapped += AddImageToCollection(image);
image.GestureRecognizers.Add(SelectImage);
TemplateGrid.Children.Add(image,j,i);
imageIndex++;
}
}
}
}
}
private EventHandler AddImageToCollection(Image image)
{
HomePage.SelectedImageCollection.Add(image);
return null;
}
但是当我单击图像时 GestureRecognizer 似乎不起作用...
我做错了什么?
【问题讨论】:
-
ObservableCollection有一个Add方法,你试过了吗?它还有一个构造函数,允许用另一个ObservableCollection的内容初始化它的内容 -
是的,我可能知道如何制作我想要的东西,但是错误呢
-
将签名改为:
private void AddImageToCollection(Image image)
标签: c# xamarin xamarin.forms xamarin.android xamarin.ios