C#一般怎么在windows应用窗体中显示在数据库查询的数据包装的一个对象

比如一个对象User他有成员变量userID,name,age等,怎么在窗口中显示这一条信息(就是这个对象),一般用什么控件。... 比如一个对象User 他有成员变量userID,name,age等,怎么在窗口中显示这一条信息(就是这个对象),一般用什么控件。 展开
 我来答
l653129617
2010-11-28
知道答主
回答量:6
采纳率:0%
帮助的人:0
展开全部
listview

private void InitListView(ListView ListView)
{
//添加列头
ColumnHeader ch1 = new ColumnHeader();
ch1.Width = 100; //列标头宽
ch1.Text = "学号"; //列标头名称
ColumnHeader ch2 = new ColumnHeader();
ch2.Width = 100;
ch2.Text = "姓名";
listView1.Columns.Add(ch1);//在同一行上添别的列(此处一行共两列)
listView1.Columns.Add(ch2);

//设置属性
listView1.GridLines = true;//显示网格线
listView1.FullRowSelect = true;//是否全行选择
listView1.HideSelection = false;//失去焦点时显示选择的项
listView1.HoverSelection = true;//当鼠标停留数秒时自动选择项
listView1.MultiSelect = false;//设置只能单选

ImageList li = new ImageList();
li.Images = new Size(80, 80);//指定图标的大小
li.Images.Add(Image.FromFile("pen.jpg"));//添加图标
li.Images.Add(Image.FromFile("box.jpg"));
li.Images.Add(Image.FromFile("file.jpg"));
listView1.LargeImageList = li;//设置大图标的集合

ImageList sm = new ImageList();
sm.ImageSize = new Size(30, 30);//指定图标大小
sm.Images.Add(Image.FromFile("pen.jpg"));
sm.Images.Add(Image.FromFile("box.jpg"));
sm.Images.Add(Image.FromFile("file.jpg"));
listView1.SmallImageList = sm;//设置小图标

//添加项
ListViewItem lv = new ListViewItem("钢笔");//第一列的记录为钢笔
lv.SubItems.Add("001");//添加第二列的内容为001
lv.SubItems.Add("派克");//添加第三列的内容
lv.ImageIndex = 0;//指定图像的索引
listView1.Items.Add(lv);
}
把 void InitListView(ListView ListView)添加到
public Form1 ()
{

InitializeComponent();
InitListView(this.listView1);

}

例:

private void InitListView(ListView ListView)
{
ColumnHeader h1 = new ColumnHeader();
h1.Width = 85;
h1.Text = "编号";
ColumnHeader h2 = new ColumnHeader();
h2.Width = 100;
h2.Text = "名称";
ColumnHeader h3 = new ColumnHeader();
h3.Width = 100;
h3.Text = "单价";
listView1.Columns.Add(h1);
listView1.Columns.Add(h2);
listView1.Columns.Add(h3);
listView1.View = View.Details;
listView1.GridLines = true;
listView1.FullRowSelect = true;
}

显示选中行的字段值

void listView_SelectedIndexChanged(object sender,EventArgs e) //当列表中的索引改变时引发此事件

{

//通过SubItems来访问其他列的属性

//必须在listview1中有选中项

listView1.SelectedItems[0].SubItems[1].Text;+"\n" //0为行号(可选多行时),1为列为(第二列,第一列0)

}

记问listview中所有的记录

添加记录时必这样添加

ColumnHeader h1 = new ColumnHeader();
h1.Width = 85;
h1.Text = "编号";
ColumnHeader h2 = new ColumnHeader();
h2.Width = 100;
h2.Text = "名称";
ColumnHeader h3 = new ColumnHeader();
h3.Width = 100;
h3.Text = "单价";
listView1.Columns.Add(h1);
listView1.Columns.Add(h2);
listView1.Columns.Add(h3);
这样是添加了3个字段,三条记录

如果用listview1.items.add('值");这种添加方法为一次添加一行一列,无法达到一行多列的目的

访问所有记录代码:

if (listView1.Items.Count > 0)
{
foreach (ListViewItem lt in listView1.Items)
{
MessageBox.Show(Convert.ToString(lt.SubItems[0].Text));//记问第行记录的第一个字段值
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式