Windows 表单应用程序:显示内容行
Windows form application: Displaying rows of content
是否可以根据数据库中的行数在 windows 表单应用程序中显示内容。我不知道这是否可以通过简单的方式实现,但下面附有概念,显示内容部分,左侧是图像,label2 应该是人的名字,label 3 是人写的内容.
现在的问题是,如果有多个 post,我怎样才能让 "rows" 显示数据库中的所有内容。如果我会使用 ASP.NET 它可能会更容易,因为格式将是:
<ul>
<li><img src="#"/> <h1>Name</h1> <p>Content<p> </li>
<ul>
您应该准备一个具有 "post" 外观的用户控件
接下来使用 FlowLayoutPanel 作为容器并添加到他的 Children 您的 "Control" 为来自 db.post 的每个 post 创建。
编辑:
如果将 FlowLayoutPanel.FlowDirection 设置为 TopDown,您将获得所需的内容。
您要查找的是 ListView 控件。您将创建一个循环并为从数据库返回的每一行添加项目。查看 Using a ListView with images 示例。
编辑:使用 DataGridView 将允许您在每个单元格中有多行。这是一个简单的示例,我手边没有小图片,但这会正确设置您的文本:
DataGridView dgv = new DataGridView();
dgv.Columns.Add("Header","Header");
dgv.Columns.Add("Details", "Details");
dgv.Dock = DockStyle.Fill;
dgv.Columns[1].DefaultCellStyle.WrapMode = DataGridViewTriState.True;
dgv.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
dgv.Rows.Add(new string[] { "Drew", "Some details" + Environment.NewLine + "use two lines" });
dgv.Rows.Add(new string[] { "Bill", "More details" });
Controls.Add(dgv);
是否可以根据数据库中的行数在 windows 表单应用程序中显示内容。我不知道这是否可以通过简单的方式实现,但下面附有概念,显示内容部分,左侧是图像,label2 应该是人的名字,label 3 是人写的内容.
现在的问题是,如果有多个 post,我怎样才能让 "rows" 显示数据库中的所有内容。如果我会使用 ASP.NET 它可能会更容易,因为格式将是:
<ul>
<li><img src="#"/> <h1>Name</h1> <p>Content<p> </li>
<ul>
您应该准备一个具有 "post" 外观的用户控件 接下来使用 FlowLayoutPanel 作为容器并添加到他的 Children 您的 "Control" 为来自 db.post 的每个 post 创建。
编辑: 如果将 FlowLayoutPanel.FlowDirection 设置为 TopDown,您将获得所需的内容。
您要查找的是 ListView 控件。您将创建一个循环并为从数据库返回的每一行添加项目。查看 Using a ListView with images 示例。
编辑:使用 DataGridView 将允许您在每个单元格中有多行。这是一个简单的示例,我手边没有小图片,但这会正确设置您的文本:
DataGridView dgv = new DataGridView();
dgv.Columns.Add("Header","Header");
dgv.Columns.Add("Details", "Details");
dgv.Dock = DockStyle.Fill;
dgv.Columns[1].DefaultCellStyle.WrapMode = DataGridViewTriState.True;
dgv.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
dgv.Rows.Add(new string[] { "Drew", "Some details" + Environment.NewLine + "use two lines" });
dgv.Rows.Add(new string[] { "Bill", "More details" });
Controls.Add(dgv);