DataGrid学习五[2]

[入库:2006年2月23日] [更新:2007年3月24日]

本文简介:


SqlDbType.NChar, 12));
        myCommand.Parameters.Add(new SqlParameter("@Address",
SqlDbType.NVarChar, 40));
        myCommand.Parameters.Add(new SqlParameter("@City",
SqlDbType.NVarChar, 20));
        myCommand.Parameters.Add(new SqlParameter("@State",
SqlDbType.NChar, 2));
        myCommand.Parameters.Add(new SqlParameter("@Zip", SqlDbType.NChar,
5));
        myCommand.Parameters.Add(new SqlParameter("@Contract",
SqlDbType.NVarChar,1));



        myCommand.Parameters["@Id"].Value =
MyDataGrid.DataKeys[(int)e.Item.ItemIndex];



        String[] cols =
{"@Id","@LName","@FName","@Phone","@Address","@City","@State","@Zip","@Contra
ct"};



        int numCols = e.Item.Cells.Count;
        for (int i=2; i<numCols-1; i++) //跳过第一、第二和最后一列
        {
            String colvalue =((TextBox)e.Item.Cells[i].Controls[0]).Text;



            // 检查在所需字段中是否有空值
            if (i<6 && colvalue == "")
            {
                Message.InnerHtml = "错误:“作者 ID”、“姓名”或“电话”不
允许使用空值";
                Message.Style["color"] = "red";
                return;
            }



            myCommand.Parameters[cols[i-1]].Value = colvalue;
        }



        //追加最后一行,将 true/false 值转换为 0/1
        if
(String.Compare(((TextBox)e.Item.Cells[numCols-1].Controls[0]).Text,
"True", true)==0)
                    myCommand.Parameters["@Contract"].Value =  "1";
        else
                    myCommand.Parameters["@Contract"].Value =  "0";





        myCommand.Connection.Open();



        try
        {
            myCommand.ExecuteNonQuery();
            Message.InnerHtml = "<b>已更新记录</b><br>" + updateCmd;
            MyDataGrid.EditItemIndex = -1;
        }
        catch (SqlException exc)
        {
            if (exc.Number == 2627)
                Message.InnerHtml = "错误:已存在具有相同主键的记录";
            else
                Message.InnerHtml = "错误:未能更新记录,请确保正确填写了字段
";
            Message.Style["color"] = "red";
        }



        myCommand.Connection.Close();



        BindGrid();
    }



    public void BindGrid()
    {
        SqlDataAdapter myCommand = new SqlDataAdapter("select * from
Authors", myConnecti

本文关键:DataGrid学习五
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top