我在解决方案资源管理器中有一个'Images'文件夹。我可以创建所有图像(及其路径)的枚举列表。我想将该列表添加到下拉列表中。现在我明确地这样做了:
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";
答案 0 :(得分:2)
使用Server.MapPath
与Directory.GetFiles
一起加载图片名称,如下所示
ddlBackground.DataSource = Directory.GetFiles(Server.MapPath("~/Images"), "*.jpg")
.Select(Path.GetFileNameWithoutExtension).ToList();
你可以直接将它绑定到控件。
答案 1 :(得分:0)
嗯,枚举必须在编译时准备好,所以没有。
但是,您可以使用Directory类获取文件夹中的所有图像。
Directory.GetFiles("[MyImagesPath]","*.jpg");
将返回文件夹中包含.jpg扩展名的所有文件的路径。