C# 创建存储图像的枚举列表
我在解决方案资源管理器中有一个“图像”文件夹。我可以创建所有图像(及其路径)的枚举列表吗。我想将该列表添加到下拉列表中。现在,我明确地这样做:C# 创建存储图像的枚举列表,c#,asp.net,C#,Asp.net,我在解决方案资源管理器中有一个“图像”文件夹。我可以创建所有图像(及其路径)的枚举列表吗。我想将该列表添加到下拉列表中。现在,我明确地这样做: private enum bgImages { BlueArt,GreenArt,StripeArt } protected void Page_Load(object sender, EventArgs e) { string[] Backgrounds = Enum.GetNames(typeof(
private enum bgImages
{
BlueArt,GreenArt,StripeArt
}
protected void Page_Load(object sender, EventArgs e)
{
string[] Backgrounds = Enum.GetNames(typeof(bgImages));
ddlBackground.DataSource = Backgrounds;
ddlBackground.DataBind();
}
//..........
pnlImage.BackImageUrl="~/Images/"+ddlBackground.SelectedItem.Text+".jpg";
嗯,枚举必须在编译时准备好,所以不需要 但是,您可以使用Directory类获取文件夹中的所有图像
Directory.GetFiles("[MyImagesPath]","*.jpg");
将返回文件夹中扩展名为.jpg的所有文件的路径
使用
Server.MapPath
和Directory.GetFiles
加载图像名称,如下所示
ddlBackground.DataSource = Directory.GetFiles(Server.MapPath("~/Images"), "*.jpg")
.Select(Path.GetFileNameWithoutExtension).ToList();
您可以直接将其绑定到控件