如何在 ASP.NET Web 表单中显示自定义列表

发布于 2024-11-14 19:18:46 字数 120 浏览 2 评论 0原文

我正在开发一个 ASP.NET Web 表单,其功能类似于博客。在主窗体上,我想显示最近帖子标题的列表以及每个帖子文本的前 75 个字符。用于显示这些标题/描述的良好控件是什么?我应该动态地将标签添加到页面上还是有更好的方法?

I am working on an ASP.NET webform that functions similar to a blog. On the main form I want to display a list of the recent post titles and under each the first 75 characters of the post text. What would be a good control to use to display these titles/descriptions? Should I just dynamically add Labels into an on the page or is there a better way?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

狼亦尘 2024-11-21 19:18:46

In WebForms use the <asp:ListView> control. It allows full flexibility for the markup while binding to a data source that provides the model of your blog entries.

锦爱 2024-11-21 19:18:46

我建议您使用 控件,并在其 中使用

  • html 元素。
  • I advise you to use the <asp:Repeater> control, and use <li> html elements in it's <ItemTemplate>.

    我爱人 2024-11-21 19:18:46

    如果您只想显示一些数据,而不进行任何编辑或排序,请使用 2 个轻型数据绑定控件之一:ListView

    <asp:ListView runat="server" ID="ListView1" 
        DataSourceID="SqlDataSource1">
      <LayoutTemplate>
        <table runat="server" id="table1" >
          <tr runat="server" id="itemPlaceholder" ></tr>
        </table>
      </LayoutTemplate>
      <ItemTemplate>
        <tr runat="server">
          <td runat="server">
            <%-- Data-bound content. --%>
            <asp:Label ID="NameLabel" runat="server" 
              Text='<%#Eval("Name") %>' />
            <%-- Add 75 chars of text here. --%>
          </td>
        </tr>
      </ItemTemplate>
    </asp:ListView>
    

    中继器

    <asp:Repeater runat="server" ID="Repeater1" 
        DataSourceID="SqlDataSource1">
      <HeaderTemplate>
        <table>
          <tr>
            <th>
              Name</th>
            <th>
              Description</th>
          </tr>
      </HeaderTemplate>
      <ItemTemplate>
        <tr>
          <td>
            <%-- Data-bound content. --%>
            <asp:Label ID="NameLabel" runat="server" 
              Text='<%#Eval("Name") %>' />
            <%-- Add 75 chars of text here. --%>
          </td>
        </tr>
      </ItemTemplate>
      <FooterTemplate>
        </table>
      </FooterTemplate>
    </asp:Repeater>
    

    If you want just to displaay some data, without any edit or sorting, use one of the 2 light data bound controls: ListView:

    <asp:ListView runat="server" ID="ListView1" 
        DataSourceID="SqlDataSource1">
      <LayoutTemplate>
        <table runat="server" id="table1" >
          <tr runat="server" id="itemPlaceholder" ></tr>
        </table>
      </LayoutTemplate>
      <ItemTemplate>
        <tr runat="server">
          <td runat="server">
            <%-- Data-bound content. --%>
            <asp:Label ID="NameLabel" runat="server" 
              Text='<%#Eval("Name") %>' />
            <%-- Add 75 chars of text here. --%>
          </td>
        </tr>
      </ItemTemplate>
    </asp:ListView>
    

    or Repeater:

    <asp:Repeater runat="server" ID="Repeater1" 
        DataSourceID="SqlDataSource1">
      <HeaderTemplate>
        <table>
          <tr>
            <th>
              Name</th>
            <th>
              Description</th>
          </tr>
      </HeaderTemplate>
      <ItemTemplate>
        <tr>
          <td>
            <%-- Data-bound content. --%>
            <asp:Label ID="NameLabel" runat="server" 
              Text='<%#Eval("Name") %>' />
            <%-- Add 75 chars of text here. --%>
          </td>
        </tr>
      </ItemTemplate>
      <FooterTemplate>
        </table>
      </FooterTemplate>
    </asp:Repeater>
    
    北城挽邺 2024-11-21 19:18:46

    使用 html 无序列表代替...动态生成它,您可以使用 jquery/css 为整体使用交替颜色

    在 Csharp 中以这种方式定义一个字符串,这对于每个帖子来说都是静态的

    string mainDiv = "<div class=\"Container\"><ul id=\"BlogPost\">";
    

    动态 li。

    string dynamic= string.empty;
    
    dynamic += "<li>" + ContentYouExtractFromdatabase + "<hr></li>";
    
    newDynamicLink = mainDiv + dynamic + "</ul></div>";
    

    现在根据您收到的帖子继续添加您的 li。

    use html unordered list instead...generate it dynamically and you can use alternating colors for the entires by using jquery/css

    In Csharp define a string this way, which would be static

    string mainDiv = "<div class=\"Container\"><ul id=\"BlogPost\">";
    

    the dynamic li for every post.

    string dynamic= string.empty;
    
    dynamic += "<li>" + ContentYouExtractFromdatabase + "<hr></li>";
    
    newDynamicLink = mainDiv + dynamic + "</ul></div>";
    

    now keep appending your li's depending upon the post you receive.

    ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文