Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 单击按钮时覆盖上一个复选框值_C#_Html_Sql_.net_Checkbox - Fatal编程技术网

C# 单击按钮时覆盖上一个复选框值

C# 单击按钮时覆盖上一个复选框值,c#,html,sql,.net,checkbox,C#,Html,Sql,.net,Checkbox,我正在使用“是”和“否”保存一个复选框值,我的问题是我有一个按钮单击,允许用户更改该值 所以我的逻辑是,如果点击按钮,复选框的值将变为“是” 以下是我最初需要保存的信息: public void StoredProcedure() { string privateItem = Private.Checked ? "Y" : "N"; connection.connection1(); if (connection.con.Sta

我正在使用“是”和“否”保存一个复选框值,我的问题是我有一个按钮单击,允许用户更改该值

所以我的逻辑是,如果点击按钮,复选框的值将变为“是”

以下是我最初需要保存的信息:

     public void StoredProcedure()
    {
        string privateItem = Private.Checked ? "Y" : "N";

        connection.connection1();
        if (connection.con.State == ConnectionState.Closed)
            connection.con.Open();
        using (SqlCommand cmd = new SqlCommand("SaveImage", connection.con))
        {
            cmd.Parameters.Add("@privatecheck", SqlDbType.Char).Value = privateItem;

            cmd.ExecuteNonQuery();
            cmd.Parameters.Clear();
        }
        connection.con.Close();
    }
基本上,我的数据库中有一个存储过程来保存我的信息

现在我想更新一个值,基本上是做同样的事情,但结果是我出错了

关于如何覆盖以前保存的复选框值的任何帮助都将非常有用


谢谢

我不完全清楚您的要求,因此我的回答给出了两种可能的解决方案:

如果您希望修改控件本身是否已选中,请参阅以下示例代码:

如果您希望修改表中的一列,那么UPDATE SQL语句将在此处完成此操作,它提供了一个关于如何使用LINQ和SQL实现此目的的详细演练,我建议您阅读

但是,我看到您正在使用
SqlCommand
,因此下面是关于如何(再次)从以下位置执行更新命令的示例代码:


以上所有内容都有助于您生成解决方案。

错误,请详细说明?Char数据类型是如何被分配bool值的?请显示/告诉错误消息和生成错误的代码您是想修改checkbox控件上的checkbox值还是数据库值?Hello@pseuronym,我想修改数据库中的checkbox值。您正在将
privateItem
设置为字符串,但是使用
Private.Checked
作为参数的值。。。看起来是个错误
private void AdjustMyCheckBoxProperties()
 {
    // Change the ThreeState and CheckAlign properties on every other click. 
    if (!checkBox1.ThreeState)
    {
       checkBox1.ThreeState = true;
       checkBox1.CheckAlign = ContentAlignment.MiddleRight;
    }
    else
    {
       checkBox1.ThreeState = false;
       checkBox1.CheckAlign = ContentAlignment.MiddleLeft;
    }

    // Concatenate the property values together on three lines.
    label1.Text = "ThreeState: " + checkBox1.ThreeState.ToString() + "\n" +
                  "Checked: " + checkBox1.Checked.ToString() + "\n" +
                  "CheckState: " + checkBox1.CheckState.ToString(); 
 }
private static void CreateCommand(string queryString,
    string connectionString)
{
    using (SqlConnection connection = new SqlConnection(
               connectionString))
    {
        SqlCommand command = new SqlCommand(queryString, connection);
        command.Connection.Open();
        command.ExecuteNonQuery();
    }
}