当前位置: 首页 > 编程语言 > C#

当复选框被禁用时,不应发生更新分享

时间:2023-04-11 10:55:20 C#

当复选框被禁用时,不应发生更新我有两个页面,一个用于管理员,一个用于教师。管理员根据教师分配科目。学院只想选择所需的时间。我的问题是我不想对禁用的复选框执行更新查询。我已经尝试了下面的代码,但它也更新为禁用复选框。使用(SqlConnectioncon2=newSqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString)){foreach(Gv1.Rows中的GridViewRowr){如果((((((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour1"))).Checked==true||((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour1"))).Checked==false)||(((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour2"))).Checked==true||((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour2"))).Checked==false)||(((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour3"))).Checked==true||((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour3"))).Checked==false)||(((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour4"))).Checked==true||((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour4"))).Checked==false)||(((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour5")))。检查==true||((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour5"))).Checked==false))))){SqlCommandcomm;复选框aa;boolhour1=(r.FindControl("chkHour1")asCheckBox).Checked;boolhour2=(r.FindControl("chkHour2")asCheckBox).Checked;boolhour3=(r.FindControl("chkHour3")asCheckBox).Checked;boolhour4=(r.FindControl("chkHour4")asCheckBox).Checked;boolhour5=(r.FindControl("chkHour5")asCheckBox).Checked;字符串subject1=ddlsubj.SelectedValue;字符串subject2=ddlsubj.SelectedValue;stringsubject3=ddlsubj.SelectedValue;字符串subject4=ddlsubj.SelectedValue;stringsubject5=ddlsubj.SelectedValue;stringdatedif=r.Cells[0].Text;aa=(CheckBox)发件人;con2.Open();comm=newSqlCommand();comm.Connection=con2;comm.CommandType=CommandType.Text;if(aa.Enabled==false){comm=newSqlCommand("UPDATEtestSETaa=falsewhensubject1=CASEWHEN(@hour1)='false'THENNULLELSE@subject1END,subject2=CASEWHEN(@hour2)='false'THENNULLELSE@subject2END,subject3=CASEWHEN(@hour3)='false'THENNULLELSE@subject3END,subject4=CASEWHEN(@hour4)='false'THENNULLELSE@subject4END,subject5=CASEWHEN(@hour5)='false'THENNULLELSE@subject5END,hour1=CASEWHEN(@hour1)='false'THEN'false'ELSE'true'END,hour2=CASEWHEN(@hour2)='false'THEN'false'ELSE'true'END,hour3=CASEWHEN(@hour3)='false'THEN'false'ELSE'true'END,hour4=CASEWHEN(@hour4)='false'THEN'false'ELSE'true'END,hour5=CASEWHEN(@hour5)='false'THEN'false'ELSE'true'ENDwheredatedif=@datedif",con2);}else{comm=newSqlCommand("updatetestsetaa=truewhensubject1=CASEWHEN(@hour1)='false'THENNULLELSE@subject1END,subject2=CASEWHEN(@hour2)='false'THENNULLELSE@subject2END,subject3=CASEWHEN(@hour3)='false'THENNULLELSE@subject3END,subject4=CASEWHEN(@hour4)='false'THENNULLELSE@subject4END,subject5=CASEWHEN(@hour5)='false'THENNULLELSE@subject5END,hour1=CASEWHEN(@hour1)='false'THEN'false'ELSE'true'END,hour2=CASEWHEN(@hour2)='false'THEN'false'ELSE'true'END,hour3=CASEWHEN(@hour3)='false'THEN'false'ELSE'true'END,hour4=CASEWHEN(@hour4)='false'THEN'false'ELSE'true'END,hour5=CASEWHEN(@hour5)='false'THEN'false'ELSE'true'ENDwheredatedif=@datedif",con2);}comm.Parameters.AddWithValue("@subject1",subject1);comm.Parameters.AddWithValue("@subject2",subject2);comm.Parameters.AddWithValue("@subject3",subject3);comm.Parameters.AddWithValue("@subject4",subject4);comm.Parameters.AddWithValue("@subject5",subject5);comm.Parameters.AddWithValue("@hour1",hour1);comm.Parameters.AddWithValue("@datedif",datedif);comm.Parameters.AddWithValue("@hour2",hour2);comm.Parameters.AddWithValue("@hour3",hour3);comm.Parameters.AddWithValue("@hour4",hour4);comm.Parameters.AddWithValue("@hour5",hour5);comm.ExecuteNonQuery();con2.Close();}}}您可能希望首先删除IF语句,因为它不需要正如其他人所说,正在检查两个trueOR(||)false,始终为真。其次,不要在任何你检查的地方看到.Enabled==False这可能适合你所看到的。根据您的代码,如果复选框被禁用则执行一个查询,如果复选框被启用则执行另一个查询if(aa.Enabled==false){}else{}如果您不希望复选框处于禁用状态Executeonthebox,请删除以下部分以上是C#学习教程:取消勾选后,整个分享的内容应该不会更新了。如果对大家有用,需要进一步了解C#学习教程,希望大家多多点赞Follow—if(aa.Enabled==false){}本文收集自网络,不代表正文位置。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:

最新推荐
猜你喜欢