📄 clsdb.cs
字号:
break;
}
case "System.Windows.Forms.MaskedTextBox":
{
strVal = ((MaskedTextBox)ctlTmp).Text;
break;
}
default:
{
MessageBox.Show("控件类型超出预设!");
return false;
}
}
switch (SaveTable.Columns[strCol].DataType.ToString())
{
case "System.String":
{
rowData[strCol] = strVal.Replace("'", "''");
break;
}
case "System.Double":
{
if (ctlTmp.Text == "")
{
rowData[strCol] = DBNull.Value;
}
else
{
if (strVal.Replace(",", "").Replace(".", "").Replace(" ", "") == "")
{
strVal = "0";
}
rowData[strCol] = Convert.ToDouble(strVal.Replace(",","").Replace(" ",""));
}
break;
}
case "System.Single":
{
if (ctlTmp.Text == "")
{
rowData[strCol] = DBNull.Value;
}
else
{
if (strVal.Replace(",", "").Replace(".", "").Replace(" ", "") == "")
{
strVal = "0";
}
rowData[strCol] = Convert.ToSingle(strVal.Replace(",", "").Replace(" ", ""));
}
break;
}
case "System.Int32":
{
if (ctlTmp.Text == "")
{
rowData[strCol] = DBNull.Value;
}
else
{
rowData[strCol] = Convert.ToInt32(strVal.Replace(",", "").Replace(" ", ""));
}
break;
}
case "System.Decimal":
{
if (ctlTmp.Text == "")
{
rowData[strCol] = DBNull.Value;
}
else
{
rowData[strCol] = Convert.ToDecimal(strVal.Replace(",", "").Replace(" ", ""));
}
break;
}
case "System.DateTime":
{
if (ctlTmp is DateTimePicker)
{
if (((DateTimePicker)ctlTmp).Checked)
{
rowData[strCol] = Convert.ToDateTime(strVal);
}
else
{
rowData[strCol] = DBNull.Value;
}
}
else
{
rowData[strCol] = Convert.ToDateTime(strVal);
}
break;
}
case "System.Boolean":
{
rowData[strCol] = (strVal=="1");
break;
}
default:
{
MessageBox.Show("数据类型超出预设!");
//return false;
break;
}
}
if (strCol == strID && IsAddNew)
{
rowData[strCol] = DBNull.Value;
}
}
}
}
SaveTable.AcceptChanges();
SaveDataByTable(SaveTable, strTable, strID);
// SaveDataByTable(SaveTable,TableName,bolIsAdd,IDCol);
}
return true;
}
public static void InitFormWithView(Control DataForm, string InitView)
{
DataRow rowData;
string strCol;
string strVal;
DataTable SaveTable = clsDB.GetData(InitView);
if (SaveTable.Rows.Count == 0)
{
rowData = SaveTable.NewRow();
SaveTable.Rows.Add(rowData);
}
rowData = SaveTable.Rows[0];
// rowData.BeginEdit();
foreach (Control ctlTmp in DataForm.Controls)
{
if (ctlTmp.Tag != null)
{
if (ctlTmp.Tag.ToString() != "")
{
strCol = ctlTmp.Tag.ToString().Replace("*", "").Replace("!", "");
strVal = rowData[strCol].ToString();
switch (ctlTmp.GetType().ToString())
{
case "System.Windows.Forms.TextBox":
{
if (ctlTmp.Tag.ToString().IndexOf("*") < 0 || ctlTmp.Text == "")
ctlTmp.Text = strVal;
break;
}
case "System.Windows.Forms.Label":
{
if (ctlTmp.Tag.ToString().IndexOf("*") < 0 || ctlTmp.Text == "")
ctlTmp.Text = strVal;
break;
}
case "System.Windows.Forms.CheckBox":
{
if (ctlTmp.Tag.ToString().IndexOf("*") < 0 || ((CheckBox)ctlTmp).Checked == false)
((CheckBox)ctlTmp).Checked = (strVal == "1");
break;
}
case "System.Windows.Forms.ComboBox":
{
if (ctlTmp.Tag.ToString().IndexOf("*") < 0 || ((ComboBox)ctlTmp).SelectedIndex <= 0)
if (ctlTmp.Tag.ToString().IndexOf("!") < 0)
{
((ComboBox)ctlTmp).SelectedValue = rowData[strCol];
}
else
{
((ComboBox)ctlTmp).Text = rowData[strCol].ToString();
}
break;
}
case "System.Windows.Forms.ListBox":
{
if (ctlTmp.Tag.ToString().IndexOf("*") < 0 || ((ListBox)ctlTmp).SelectedIndex == 0)
((ListBox)ctlTmp).SelectedValue = rowData[strCol];
break;
}
case "System.Windows.Forms.DateTimePicker":
{
if (ctlTmp.Tag.ToString().IndexOf("*") < 0)
{
if (strVal == "")
{
((DateTimePicker)ctlTmp).Checked = false;
}
else
{
((DateTimePicker)ctlTmp).Checked = true;
try
{
((DateTimePicker)ctlTmp).Value = Convert.ToDateTime(strVal);
}
catch
{
//strVal = strVal;
}
}
}
break;
}
//MaskedTextBox
case "System.Windows.Forms.MaskedTextBox":
{
if (ctlTmp.Tag.ToString().IndexOf("*") < 0 || ctlTmp.Text == "")
ctlTmp.Text =double.Parse(strVal).ToString("000000.00");
break;
}
default:
{
throw new Exception("控件类型超出预设!");
}
}
}
}
}
}
public static void SaveDataByTable(DataTable TableSave, string TableName, bool IsAddNew, string IDCol)
{
// OracleCommand ocmSave =new OracleCommand();
string strSql = "";
string strValues = "";
string strWhere;
if (IsAddNew)
{
for (int j = 0; j < TableSave.Rows.Count; j++)
{
strSql = "Insert Into " + TableName + " (";
strValues = ") Values (";
for (int i = 0; i < TableSave.Columns.Count; i++)
{
if (TableSave.Columns[i].ColumnName == IDCol)
{
//strValues=strValues+"hibernate_sequence.nextval,";
}
else
{
if (TableSave.Rows[j][i] != DBNull.Value)
{
strSql = strSql + TableSave.Columns[i].ColumnName + ",";
switch (TableSave.Columns[i].DataType.ToString())
{
case ("System.String"):
{
strValues = strValues + "'" + TableSave.Rows[j][i].ToString() + "',";
break;
}
case ("System.DateTime"):
{
if (TableSave.Rows[j][i] != DBNull.Value)
{
strValues = strValues + "'" + Convert.ToDateTime(TableSave.Rows[j][i]).ToString("yyyy-MM-dd HH:mm:ss") + "',";
}
else
{
strValues = strValues + "null,";
}
break;
}
case ("System.Boolean"):
{
if (TableSave.Rows[j][i] != DBNull.Value)
{
int intVal;
if (TableSave.Rows[j][i].ToString().ToLower() == "true")
{
intVal = 1;
}
else
{
intVal = 0;
}
strValues = strValues +intVal.ToString() + ",";
}
else
{
strValues = strValues + "null,";
}
break;
}
default:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -