我可以更新列表视图中的数据吗?

时间:2014-01-14 09:00:42

标签: c# .net winforms listview

我有一个表单,其中我有一个商店的产品数据。我只是通过简单地将产品代码提供到其他形式来访问产品名称和价格,现在我希望当我打开我的产品表单时,我已经使用列表视图来显示已经添加的产品,我可以轻松点击任何行,点击编辑按钮和选定的列表视图行变为可编辑,我只需更新列表视图中的数据(通过在列表视图中写入),然后单击保存,它只是使用更新查询自动将数据保存到我的数据库中。

我在列表视图中加载产品数据的代码是:

 private void frm4_Load(object sender, EventArgs e)
        {
            fnc_LoadProductsInfo(lvProducts);

        }

        private void fnc_LoadProductsInfo(ListView lv)
        {
            string sql;

            sql = "";
            sql += "SELECT * FROM ProductLog ORDER BY ItemNo";

            SqlConnection con = new SqlConnection();
            clsConnection clsCon = new clsConnection();
            SqlCommand cmd = new SqlCommand();
            SqlDataReader sdr;

            clsCon.fnc_ConnectToDB(ref con);

            cmd.Connection = con;
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = sql;
            sdr = cmd.ExecuteReader();

            lv.Items.Clear();
            ListViewItem lvItem;

            while (sdr.Read())
            {
                lvItem = new ListViewItem();

                lvItem.Text = Convert.ToString(sdr.GetValue(sdr.GetOrdinal("ItemNo")));
                lvItem.SubItems.Add(Convert.ToString(sdr.GetValue(sdr.GetOrdinal("ProductCode"))));
                lvItem.SubItems.Add(Convert.ToString(sdr.GetValue(sdr.GetOrdinal("ProductName"))));
                lvItem.SubItems.Add(Convert.ToString(sdr.GetValue(sdr.GetOrdinal("ProductPrice"))));
               // lvItem.SubItems.Add(Convert.ToString(sdr.GetValue(sdr.GetOrdinal("TotalPrice"))));
                //lvItem.SubItems.Add(Convert.ToString(sdr.GetValue(sdr.GetOrdinal("Password"))));
                lv.Items.Add(lvItem);
                lvItem = null;
            }

            // lblTotalRecords.Text = Convert.ToString(lv.Items.Count);

            sdr.Close();
            sdr = null;
            cmd = null;
            con.Close();
            con = null;


        }

是否可以在其自己的列中编辑列表视图,如果是,那么我该怎么做?任何其他建议也会很明显......

0 个答案:

没有答案