asp:列表框控件自定义

时间:2012-05-24 22:10:51

标签: c# asp.net visual-studio-2010 information-retrieval

我正在做这个信息回溯搜索引擎,使用Lucine.net在Doc文件中搜索某些术语。一切都很顺利我在asp:listbox控件中得到结果搜索结果。

我设法获取文件的名称及其路径,如下图所示:

enter image description here

// Using      
 lst_searchResult.Items.Add(doc.Get("title"));
 lst_searchResult.Items.Add(doc.Get("path"));

我想对列表框中的所选项目执行更多操作,例如

  1. (下载文档)使用按钮。
  2. (通过电子邮件发送链接)。
  3. 我不是一个诚实的ASP.net专家,你能指导我吗?

    谢谢

1 个答案:

答案 0 :(得分:4)

asp:listbox被视为<select> html控件。选择控件的外观由您使用的浏览器确定。唯一的自定义选项是设置此控件的边框/颜色/滚动条。

如果您想要更具互动性的外观,请使用asp:listview控件。有了它,您可以控制如何呈现列表的一行。所以你可以添加按钮,链接等。

在代码中,您可以定义类似

的DataStructure
class SearchResult
{
   public string Title {get; set;}
   public string Path {get; set;}
}

然后将List<SearchResult>绑定到listview控件。

ListView的标记可能如下所示:

<asp:ListView runat="server" ID="ListView1">
  <LayoutTemplate>
    <table>
      <tr runat="server" id="itemPlaceholder" ></tr>
    </table>
  </LayoutTemplate>
  <ItemTemplate>
    <tr>
      <td><a href='<%#Eval("Path") %>'><%#Eval("Title") %></a></td>
    </tr>
  </ItemTemplate>
</asp:ListView>

此链接显示了一些有关如何使用ListView控件的示例:

http://msdn.microsoft.com/en-us/library/bb398790.aspx