初学WINFORM表格用什么控件实现

bulls5988 2011-02-23 01:35:31
比如:月收入统计表 , 这种要求生成表格应该怎么做呢?
怎么能根据sql查询结果,自动生成表格呢?比如像:BS的
while
{
....
<tr><td>....</td></tr>
}
这样的.

车次 总费用 单车费用 初日期 末日期
10000 560000 56 2011-01-30 2011-02-28
...全文
156 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
livdan 2011-02-23
  • 打赏
  • 举报
回复
查询得到datatable dt = 数据库查询出的结果方法
绑定如下 dataGridView1.DataSource = dt.DefaultView;
livdan 2011-02-23
  • 打赏
  • 举报
回复
查询出值然后绑定到datagridview上
fangxianghua9801 2011-02-23
  • 打赏
  • 举报
回复
TableLayoutPanel控件现成的
fangxianghua9801 2011-02-23
  • 打赏
  • 举报
回复
//头像列表绑定
private void HeadDataBind()
{
int iCount = 160;
TableLayoutPanel tlp = new TableLayoutPanel();
tlp.Name = "headTp";
tlp.ColumnCount = 10;
tlp.RowCount = iCount % 10 == 0 ? iCount / 10 : iCount / 10 + 1;

tlp.Dock = DockStyle.Fill;
tlp.CellBorderStyle = TableLayoutPanelCellBorderStyle.None;
int j = 0;
for (int i = 0; i < tlp.RowCount; i++)
{
tlp.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 45F));
for (int k = 0; k < tlp.ColumnCount; k++)
{
if ((i * 10 + k) == iCount)
{
break;
}
j++;
HeadBox headBox = new HeadBox();
headBox.Name = j + ".png";
headBox.InsideborderColor_Default = System.Drawing.Color.FromArgb(((int)(((byte)(150)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
headBox.InsideborderColor_Move = System.Drawing.Color.FromArgb(((int)(((byte)(200)))), ((int)(((byte)(169)))), ((int)(((byte)(216)))), ((int)(((byte)(247)))));
headBox.MiddleborderColor_Default = System.Drawing.Color.FromArgb(((int)(((byte)(50)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))));
headBox.MiddleborderColor_Move = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(169)))), ((int)(((byte)(216)))), ((int)(((byte)(247)))));
headBox.OutsideborderColor_Default = System.Drawing.Color.Transparent;
headBox.OutsideborderColor_Move = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(169)))), ((int)(((byte)(216)))), ((int)(((byte)(247)))));

headBox.BackImage = Image.FromFile(string.Format(Path.Combine(Application.StartupPath, @"Themes/default/head/{0}.png"), j));
headBox.Size = new Size(40, 40);
headBox.Click += new EventHandler(headBox_Click);
tlp.Controls.Add(headBox, k, i);
tlp.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 45F));
}
}
tlp.TabIndex = 0;
tlp.AutoScroll = true;
headPanel.Controls.Add(tlp);
}
wuyq11 2011-02-23
  • 打赏
  • 举报
回复
datagridview
listview
也可自定义,第三方控件
ICANNER 2011-02-23
  • 打赏
  • 举报
回复
多得很 ,datagridView,Listview ,XPTable......等等
_三皮_ 2011-02-23
  • 打赏
  • 举报
回复
datagridView可以实现的
GameWong 2011-02-23
  • 打赏
  • 举报
回复
listview,datagridview,等

我用到的listview控件

using sqlClient

string str = @"Password=pw;Persist Security Info=True;User ID=sa;Initial Catalog=dbname;Data Source=sql实例";
SqlConnection con = new SqlConnection(str);
string sqlcom = "select * from tabel";

SqlCommand cmd = new SqlCommand(sqlcom, con);

SqlDataAdapter da = new SqlDataAdapter(sqlcom,con);
con.Open();
DataTable dt = new DataTable();
da.Fill(dt);
method(dt);

private void method(DataTable dt) {
listView1.Items.Clear();
ListViewItem listItem = null;
for (int j = 0; j < dt.Rows.Count;j++ ) {
listItem = new ListViewItem(dt.Rows[j][0].ToString());
for (int k = 1; k < dt.Columns.Count; k++) {
listItem.SubItems.Add(dt.Rows[j][k].ToString());
}
listView1.Items.Add(listItem);
}
}
WenJie11533 2011-02-23
  • 打赏
  • 举报
回复
datagridView可以实现!
flyerwing 2011-02-23
  • 打赏
  • 举报
回复
datagridview,listview,

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧