0

我的数据库中有未知数量的行,其中包含 id 和 text 列。在我的代码中,我将此数据转换为带有参数 id 和 text 的对象新闻列表。

HTML

<div class="middleDiv" id="mid" runat="server">
</div>

代码:

List<news> news = loadNewsFroamDbs();
String html = "";
for (int i=0;i<news.Count; i++) {
String html1 = " <div class='big'>" +
                        "<div class='id'>" +
                            "<label>" + news.id + "</label>" +
                            "<label>id</label>" +
                        "</div>" +
                        "<div class='text'>" +
                            "<a href='newsDetail.aspx?id=" + news.id + "'>"
                            + news.text + "</a>" +
                        "</div></div>" 
html = html + html1;
mid.InnerHtml = html;
}

当我想在我的页面上启动我的 delete() 函数时,我应该使用什么组件?我不能使用 button+onClick 方法。我必须学习有关控制器的知识吗?

4

2 回答 2

1

我同意这里的每个人的观点,您应该使用 GridView,现在看一下这个快速示例以了解如何使用它,您几乎可以将表格格式化为您想要的任何方式(而且您实际上不必输入所有你自己的代码VS会为你做很多事情)

.ASPX

<asp:GridView ID="GridView1" runat="server" CellPadding="4" ForeColor="#333333" 
            GridLines="None">
            <AlternatingRowStyle BackColor="White" />
            <Columns>
                <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" 
                    ShowSelectButton="True" />
            </Columns>
            <EditRowStyle BackColor="#2461BF" />
            <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
            <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="#EFF3FB" />
            <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
            <SortedAscendingCellStyle BackColor="#F5F7FB" />
            <SortedAscendingHeaderStyle BackColor="#6D95E1" />
            <SortedDescendingCellStyle BackColor="#E9EBEF" />
            <SortedDescendingHeaderStyle BackColor="#4870BE" />
        </asp:GridView>

。CS

public class News
    {
        public int id { get; set; }
        public string title { get; set; }
        public string content { get; set; }
        //as many properties as you want
    }
    public partial class bindGridviewToList : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            News n1 = new News() { id = 1, content = "content", title = "title" };
            News n2 = new News() { id = 2, content = "content", title = "title" };
            News n3 = new News() { id = 3, content = "content", title = "title" };

            List<News> newsList = new List<News>();

            newsList.Add(n1); newsList.Add(n2); newsList.Add(n3);

            GridView1.DataSource = newsList;
            GridView1.DataBind();
        }
    }

运行此示例,您将看到使用 GridView 是多么容易

于 2013-05-10T23:34:25.637 回答
1

梅兰妮是对的。GridView如果要使用 HTML 表格元素,则应使用,。

如果您不打算使用表格,请使用DataList。这可能就是你想要的。如果这仍然不适合您,请查看您可以使用的其他数据控件(检查 DataList 页面上的左侧窗格)。

编辑:为什么不能使用按钮进行删除?我没有理由不这样做,AFAIK 所有数据控件都允许您使用按钮进行创建、删除和编辑。

于 2013-05-10T21:19:00.970 回答