C# 动态赋值CheckBox
前面的查询数据操作这里就不在说了,不懂得可以去看我的博文C# GridControl列表动态赋值,查询步骤都是一样的,主要是实体类的属性值 赋值到CheckBox中
新增
1. 前端赋值
//CheckBox赋值model
//细胞病理_临床信息_Data 实体类与数据库字段对应
private 细胞病理_临床信息_Data 赋值_临床信息(int ID)
{
Element.细胞病理_临床信息_Data data = new 细胞病理_临床信息_Data();
if (CheckBox_外阴肿物.Checked)//文本框选中事件 打√
{
data.外阴肿物 = 1;
}
if (CheckBox_外阴白色病变.Checked)
{
data.外阴白色病变 = 1;
}
if (HPVYXContent_阳性其他.ValueEdit != null)
{
data.HPVContent = HPVYXContent_阳性其他.ValueEdit.EditValue.ToString();
}
if (症状_其他Content.ValueEdit.EditValue != null)
{
data.症状_其他Content = 症状_其他Content.ValueEdit.EditValue.ToString();
}
else
{
data.症状_其他Content = "";
}
if (labeledDateTime_末次月经.EditValue.ToString() != "")
{
data.末次月经时间 = labeledDateTime_末次月经.EditValue.ToString();
}
else
{
data.末次月经时间 = " ";
}
if (HYCount_怀孕次数.valueEdit.Text != null)
{
if (HYCount_怀孕次数.valueEdit.Text == "")
{
data.怀孕次数 = 0;
}
else
{
data.怀孕次数 = Convert.ToInt32(HYCount_怀孕次数.valueEdit.Text);
}
}
if (CTCount_产胎.valueEdit.Text != null)
{
if (CTCount_产胎.valueEdit.Text == "")
{
data.产胎数量 = 0;
}
else
{
data.产胎数量 = Convert.ToInt32(CTCount_产胎.valueEdit.Text);
}
}
if (临床检查其他_UnderLineEdit.valueEdit.Text != null)
{
data.临床其他 = 临床检查其他_UnderLineEdit.valueEdit.Text;
}
else
{
data.临床其他 = "";
}
return data;
}
//调用渲染方法 model存的是数据库数据
View_临床信息_渲染(model);
//model赋值CheckBox
//实体类(细胞病理_临床信息_Data)属性采用int类型 数据库表字段类型为 bit
private void View_临床信息_渲染(Element.细胞病理_临床信息_Data model)
{
if (model.是否绝经 != 0)
{
checkBox_是.Checked = true;
}
if (model.末次月经时间.ToString() != "" && model.末次月经时间.ToString()!= "1900/1/1 0:00:00" && model.末次月经时间.ToString() != "1900-01-01 0:00:00")
{
labeledDateTime_末次月经.EditValue = model.末次月经时间;
}
else
{
labeledDateTime_末次月经.EditValue = "";
}
if (model.口服避孕药 != 0)
{
CheckBox_口服避孕药.Checked = true;
}
if (model.口服雌性激素 != 0)
{
CheckBox_口服雌性激素.Checked = true;
}
if (model.外阴白色病变 != 0)
{
CheckBox_外阴白色病变.Checked = true;
}
if (model.临床其他 != null)
{
临床检查其他_UnderLineEdit.valueEdit.Text = model.临床其他;
}
if (model.临床诊断 != null)
{
valueEdit_临床诊断.EditValue = model.临床诊断;
}
}
//下面是新增为SQL语句赋值
//采用 .Replace方式动态赋值SQL语句
//数据库信息同样是读取ini文件,不懂得可以去看我的上一篇博文,如何读取ini配置文件已经SQL文件
string sqlstr = File.ReadAllText(Environment.CurrentDirectory + @"\SQLFile\CytopathologyDataFile\细胞病理_临床信息_新增.sql");
string str = sqlstr.Replace("{{病理Id}}", data.病理Id.ToString())
.Replace("{{是否绝经}}", data.是否绝经.ToString());
string sqlstrIni = Environment.CurrentDirectory + @"\SQLFile\CytopathologyDataFile\临床信息Command.ini";
string conString = Common.DbHelperSQL.ConnectionStringOfIni(sqlstrIni, "Cytopathology");
bool count = Common.DbHelperSQL.ExecuteCommandSql(str, conString);
if (count == false)
{
throw new Exception("细胞病理_临床信息,添加失败!");
}
//ExecuteCommandSql 修改SQL语句执行方法
public static bool ExecuteCommandSql(string SqlStr, string conString)
{
try
{
using (SqlConnection connection = new SqlConnection(conString))//Connection
{
using (SqlCommand cmd = new SqlCommand(SqlStr, connection))//Command
{
connection.Open();
int rows = cmd.ExecuteNonQuery();//ExecuteNonQuery
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
}
}
catch (Exception err)
{
throw err;
}
}
//从数据库中读出的数据 bool赋值int
if (dataRow["宫内环"] != null && dataRow["宫内环"].ToString().Length > 0)
{
model.宫内环 = Convert.ToInt32(dataRow["宫内环"]);
}
//labeledText 动态赋值
if (model.病理号!=null)
{
labeledText_病理号.EditValue = model.病理号;
}