winform datagridview 显示.gif图片

如题所述

第1个回答  2014-08-08
datagridview中datagridviewImageColumn这个类型.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43

//【假设你有一个windows程序,并且窗体上有一个DataGridView控件,这个控件只有一个列(名称为Image),类型为DataGridViewImageColumn】
public Form1()
{
InitializeComponent();
GetData();
}
private void GetData()
{
foreach (string s in Directory.GetFiles(@"E:\My Documents\图片收藏\表情","*.gif"))
{
this.demoGrid.Rows.Add(s);
//注意,虽然字段类型是Image,但我们这里只给它传一个图片路径过去,真正读取图片是由下面的事件处理程序做的
}
}

///
/// 这个事件就在尝试对单元格进行格式化的时候触发。在这里设置真正的图片
///
///
///
private void demoGrid_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (demoGrid.Columns[e.ColumnIndex].Name.Equals("Image"))
{
string path = e.Value.ToString();
e.Value = GetImage(path);
}
}
public System.Drawing.Image GetImage(string path)
{
public System.Drawing.Image GetImage(string path)
{
System.IO.FileStream fs = new System.IO.FileStream(path, System.IO.FileMode.Open);
System.Drawing.Image result = System.Drawing.Image.FromStream(fs);

fs.Close();

return result;

}

}追问

.gif图片显示成了静态的图片了

本回答被提问者和网友采纳
相似回答