conn.open()//打开数据库连接
sqlCommand cmd=new sqlCommand(sql,conn)创建command对象并传入sql语句和数据库连接通道
SqlDataReader sdr=cmd.ExecuteReader()//用cmd执行查询并把结果保存到sdr
//用sdr读取记录
while(sdr.Read())//读取一行记录,如果记录存在返回true
{
int no=Convert.ToInt32(sdr["列1"])//表的第一列
string name=sdr["列2"].ToString()//表的第二列
//创建一个listView的行,并把no设置为第首列
ListViewItem item=new ListViewItem (no.ToString)
//添加这一行的子项
item.SubItem.Add(name)
//把这一行添加到界面的ListView控件中
lvi.Item.Add(item)
}
0、本质上是listview绑定Adapter,Adapter关联List,因此List变化后导致Adapter同步变化;再通过调用adapter.notifyDataSetChanged()方法使得listview界面自动更新。*** 作:
1、List<String>strName = new ArrayList<String>()//实际的数据源
2、Adapter adapter = new ArrayAdapter<String>(context,
R.layout.xmlforitem, strName)//适配器,其中 R.layout.xmlforitem是列表中每一项的布局,可以用默认的也可自建,strName则是将数据源绑定到适配器
3、listView.setAdapter(adapter)//将适配器绑定到列表显示控件ListView;
4、strName.add("TEST ONE")//增加一项,引起list变化,Adapter也随之变化;
5、adapter.notifyDataSetChanged()//调用notifyDataSetChanged()更新适配器,ListView会自动刷新,notifyDataSetChanged()方法可能需要在UI线程中调用,建议自行测试;
6、数据增加可能引起内存变化,需防内存溢出;
7、其他。
以上仅供参考,建议多搜索相关文档。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)