求高手 加载大量图片 怎么优化内存?

o465162770 2010-11-19 01:17:19
求高手 加载大量图片 怎么优化内存?
...全文
210 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
小慧哥 2010-11-22
  • 打赏
  • 举报
回复
没人回答?揭贴
o465162770 2010-11-19
  • 打赏
  • 举报
回复
我用的是XML 循环读的
public void winLoad()
{
readXML xml = new readXML();
DataTable table = xml.ReadMiniDTXml();
for (int i = 0; i < table.Rows.Count; i++)
{
Image user = new Image();
user.Name = "u" + (i + 1).ToString();

user.Source = new BitmapImage(new Uri(Environment.CurrentDirectory + table.Rows[i]["path1"].ToString().Trim()));

user.Width = 100;
user.Height = 100;
this.stackPanel_Image.Children.Add(user);


}

然后用线程加载的
Thread thread = new Thread(DO);
// thread.IsBackground = true;
thread.Start();
public void AddImage()
{
winLoad();


}
public void DO()
{

System.Windows.Application.Current.Dispatcher.BeginInvoke(new AddButtonDelegate(AddImage), DispatcherPriority.ContextIdle);

}
o465162770 2010-11-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 bossma 的回复:]
没做过
个人认为应该建立一个机制,设置图片的缓存级别,划分不同的缓存时间。
在内存中维护这个机制的正常运行。
[/Quote]
哥 咱来点实际的``~~
o465162770 2010-11-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 h4xxor1337 的回复:]
先mark一下, 晚上回来答复..
[/Quote]
好 等你哈 先用楼上的楼上的做法侃侃
不帮忙先生 2010-11-19
  • 打赏
  • 举报
回复
先mark一下, 晚上回来答复..
萤火架构 2010-11-19
  • 打赏
  • 举报
回复
没做过
个人认为应该建立一个机制,设置图片的缓存级别,划分不同的缓存时间。
在内存中维护这个机制的正常运行。
sprc_lcl 2010-11-19
  • 打赏
  • 举报
回复
            Image _img = Image.FromFile("...");//大文件
Bitmap img = new Bitmap(200, 200);//实际显示
Graphics g = Graphics.FromImage(img);
g.DrawImage(_img, new Rectangle(0, 0, img.Width, img.Height));
g.Dispose();
_img.Dispose();
this.pictureBox1.Image = img;

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧