从列表视图中获取所选图像 [英] Get selected image from list view
本文介绍了从列表视图中获取所选图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在列表视图控件中列出文件夹中的所有图像。列表视图中选择的图像将显示在图像控件上。
How to list out all the images in the folder in a list view control. The image selected in the list view is to be shown on the image control .
推荐答案
您好,
请看下面的例子。
Aspx
Hi,
Please have a look on following example.
Aspx
<script type="text/javascript">
function showimage(fsImage)
{
document.getElementById('<%= imgSample.ClientID %>').src = "/images/" + fsImage.text;
return false;
}
</script>
<form id="form1" runat="server">
<div>
<asp:ListView ID="lvImage" runat="server">
<LayoutTemplate>
<table runat="server" id="table1" >
<tr runat="server" id="itemPlaceholder" ></tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr runat="server">
<td runat="server">
<asp:HyperLink ID="hnkImage" runat="server" onclick='<%# "return showimage(this);"%>'
Text='<%# DataBinder.Eval(Container.DataItem,"Text") %>'
NavigateUrl="#"></asp:HyperLink>
</td>
</tr>
</ItemTemplate>
</asp:ListView>
</div>
<div id="divSelectedImage">
<asp:Image ID="imgSample" runat="server" />
</div>
</div>
Code Behind:
Code Behind:
private void fillImage()
{
String searchFolder = Server.MapPath("/images");
String[] filters = new String[] { "jpg", "jpeg", "gif", "png" };
String[] lsFiles = GetFilesFrom(searchFolder, filters, false);
List<ListItem> files = new List<ListItem>();
foreach (string filePath in lsFiles)
{
files.Add(new ListItem(Path.GetFileName(filePath), filePath));
}
lvImage.DataSource = files;
lvImage.DataBind();
}
private String[] GetFilesFrom(String searchFolder, String[] filters, bool isRecursive)
{
DirectoryInfo loDirectory = new DirectoryInfo(searchFolder);
List<String> filesFound = new List<String>();
var searchOption = isRecursive ? SearchOption.AllDirectories : SearchOption.TopDirectoryOnly;
foreach (var filter in filters)
{
filesFound.AddRange(Directory.GetFiles(searchFolder, String.Format("*.{0}", filter), searchOption));
}
return filesFound.ToArray();
}
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
fillImage();
}
}
你将获得listview中的图像('图像名称')列表点击图片将图片放在图片控件下面的div中。
希望这可以帮助你......!
you will get image('image name') list in listview and on click on image will place that image in image control in below div.
Hope this helps you...!
这篇关于从列表视图中获取所选图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文