我正在开发我的应用程序的一部分,我需要在手机中拍摄图像(用户使用应用程序下载它们)并将其显示在数据绑定列表框中。我们称之为Page1。
但是,当用户从我的RSS Feed中“收藏”图像时,我希望能够添加到此集合中。我们打电话给这个页面2。
所以从本质上讲,我想组合Page1项和Page2项,并在Page1上显示它们。我还希望能够允许用户删除他们喜欢的任何图像。
我不确定如何解决这个问题。我是否创建了一个单独的类,并将所有项目写入隔离存储中的文件?
模拟代码(因为不在我的应用计算机上)
public class Imagelist : ObservableCollection<Images>
{
public Imagelist() : base()
{
//add items from page1.
//add items from page2.
Add(new Images("Imagepath"));
...
}
}
...获取/设置路径,可能是将所有图像设置为一个键?
不确定,但绝对可以使用一些见解。
答案 0 :(得分:1)
将ImageList实现为单例应该可行。我创建了一个简短的例子来添加字符串而不是图像。
void Main()
{
var page1 = new Page1();
var page2 = new Page2();
foreach (var txt in ImageList.Instance)
{
Console.WriteLine (txt);
// prints:
// Instance created
// page1
// page2
}
}
public class ImageList : ObservableCollection<string>
{
private static ImageList _instance;
public static ImageList Instance
{
get
{
if(_instance==null)
{
_instance = new ImageList();
_instance.Add("Instance created");
}
return _instance;
}
}
private ImageList()
{
}
}
public class Page1
{
public Page1()
{
ImageList.Instance.Add("page1");
}
}
public class Page2
{
public Page2()
{
ImageList.Instance.Add("page2");
}
}