C#获取图片路径问题
publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privatevoidbtnBrows...
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnBrowse_Click(object sender, EventArgs e)
{
lstFile.Items.Clear();
FolderBrowserDialog fbd = new FolderBrowserDialog();
if (fbd.ShowDialog() == DialogResult.OK)
{
string[] PicName ={ "*.jpg", "*.bmp" };
txtPath.Text = fbd.SelectedPath.ToString();
for (int i = 0; i < PicName.Length; i++)
{
for (int y = 0; y < Directory.GetFiles(fbd.SelectedPath, PicName[i]).Length; y++)
{
lstFile.Items.Add(Directory.GetFiles(fbd.SelectedPath, PicName[i])[y]);
}
}
}
}
private void lstFile_SelectedIndexChanged(object sender, EventArgs e)
{
string pictrue = lstFile.SelectedItem.ToString();
picBrowse.Image = Bitmap.FromFile(pictrue);
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
我的程序是这样 我想修改一下 不显示全部的文件路径 在lstfile 这个LISTBOX中 我要怎么修改 展开
{
public Form1()
{
InitializeComponent();
}
private void btnBrowse_Click(object sender, EventArgs e)
{
lstFile.Items.Clear();
FolderBrowserDialog fbd = new FolderBrowserDialog();
if (fbd.ShowDialog() == DialogResult.OK)
{
string[] PicName ={ "*.jpg", "*.bmp" };
txtPath.Text = fbd.SelectedPath.ToString();
for (int i = 0; i < PicName.Length; i++)
{
for (int y = 0; y < Directory.GetFiles(fbd.SelectedPath, PicName[i]).Length; y++)
{
lstFile.Items.Add(Directory.GetFiles(fbd.SelectedPath, PicName[i])[y]);
}
}
}
}
private void lstFile_SelectedIndexChanged(object sender, EventArgs e)
{
string pictrue = lstFile.SelectedItem.ToString();
picBrowse.Image = Bitmap.FromFile(pictrue);
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
我的程序是这样 我想修改一下 不显示全部的文件路径 在lstfile 这个LISTBOX中 我要怎么修改 展开
展开全部
lstFile.Items.Add(Directory.GetFiles(fbd.SelectedPath, PicName[i])[y]);
改为
lstFile.Items.Add( Path.GetFileName(Directory.GetFiles(fbd.SelectedPath, PicName[i])[y]) );
改为
lstFile.Items.Add( Path.GetFileName(Directory.GetFiles(fbd.SelectedPath, PicName[i])[y]) );
追问
谢谢 可是 这个 提示我 错误
追答
这个问题可以用泛型来绑定。比如
先创建如下类
public class pathvalue
{
public string pathName { get; set; }
public string pathFullName { get; set; }
public pathvalue(string pname, string pfname)
{
this.pathName = pname;
this.pathFullName = pfname;
}
}
然后使用以下方法绑定:
List list = new List();
for (int i = 0; i < PicName.Length; i++)
{
for (int y = 0; y < Directory.GetFiles(fbd.SelectedPath, PicName[i]).Length; y++)
{
list.Add(new pathvalue(Path.GetFileName(Directory.GetFiles(fbd.SelectedPath, PicName[i])[y]),Directory.GetFiles(fbd.SelectedPath, PicName[i])[y]));
//lstFile.Items.Add(Directory.GetFiles(fbd.SelectedPath, PicName[i])[y]);
}
}
lstFile.DataSource = list;
lstFile.ValueMember = "pathFullName";
lstFile.DisplayMember = "pathName";
取值时可以用
object obj = lstFile.Items[this.lstFile.SelectedIndex];
string pictrue = ((pathvalue)obj).pathFullName;
picBrowse.Image = Bitmap.FromFile(pictrue);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询