我想创建一个窗口表单,它从文件中获取图像并在c#中的pictureBox中显示 当我输入image.FromFile后,我遇到问题,在“=”之后,FromFile变为红色下划线,就好像它不在库中一样。
1 using System;
2 using System.Collections.Generic;
3 using System.ComponentModel;
4 using System.Data;
5 using System.Drawing;
6 using System.Linq;
7 using System.Text;
8 using System.Windows.Forms;
9 using System.IO;
10
11 namespace demo2
12 {
13 public partial class Image : Form
14 {
15 public Image()
16 {
17 InitializeComponent();
18 }
19
20
21
22 private void button1_Click(object sender, EventArgs e)
23 {
24 OpenFileDialog ofd = new OpenFileDialog();
25 ofd.Filter = "image files|*.png;*.jpg;*.gif";
26 DialogResult dr = ofd.ShowDialog();
27
28 if (dr == DialogResult.Cancel)
29 return;
30
31 pictureBox1.Image = Image.FromFile(ofd.FileName);
32 textBox1.Text = ofd.FileName;
33 }
34
35 }
36 }
答案 0 :(得分:8)
您的班级名为Image
,与您要使用的系统定义Image
发生冲突。因此,当您尝试使用Image.FromFile
时,编译器会使用您的命名空间中定义的那个(在您自己的类中),并且没有定义FromFile
方法。
因此,当您想要使用正确的Image
类:
1)您应该限定命名空间,如:System.Drawing.Image.FromFile
或
2)您可以将自己的班级重命名为与Image
不同的名称,因此名称中没有碰撞