我创建了一个搜索表单,根据名为许可证ID的搜索值查找记录.我可以拉出该值的所有字段.我的问题是我正在尝试更新该记录的任何字段,例如,如果我想更新地址字段或所有这些字段值都在文本框中的邮政编码字段.我在"Lname"处或附近得到语法错误.Lname是姓氏的数据库字段名称.这个项目只是一个熟悉Postgres的测试项目.这是我的源代码.我不确定问题是什么,字段名称是否正确指定.
private void UpdateRecord()
{
try
{
NpgsqlConnection conn = Connection.getConnection();
conn.Open();
NpgsqlCommand cmd = new NpgsqlCommand("update info set \"Fname\" = :FirstName, set \"Lname\" = :LastName, set \"Address\" = :Address," +
"set \"City\" = :City, set \"State\" = State, set \"Zip\" = :Zip," +
"set \"PhoneNumber\" = :PhoneNumber where \"LicenceNumber\" = '" + LicenseID + "' ;", conn);
cmd.Parameters.Add(new NpgsqlParameter("FirstName", NpgsqlTypes.NpgsqlDbType.Text));
cmd.Parameters.Add(new NpgsqlParameter("LastName", NpgsqlTypes.NpgsqlDbType.Text));
cmd.Parameters.Add(new NpgsqlParameter("Address", NpgsqlTypes.NpgsqlDbType.Text));
cmd.Parameters.Add(new NpgsqlParameter("City", NpgsqlTypes.NpgsqlDbType.Text));
cmd.Parameters.Add(new NpgsqlParameter("State", NpgsqlTypes.NpgsqlDbType.Text));
cmd.Parameters.Add(new NpgsqlParameter("Zip", NpgsqlTypes.NpgsqlDbType.Text));
cmd.Parameters.Add(new NpgsqlParameter("PhoneNumber", NpgsqlTypes.NpgsqlDbType.Text));
cmd.Parameters[0].Value …Run Code Online (Sandbox Code Playgroud) 我的表单有大约20个文本框控件,我想激发Text_Changed事件,而不是为每个单独的文本框添加事件.有没有办法循环文本框来触发此事件?我想要做的是在文本更改时清除标签控件.我没有显示消息框,而是使用标签控件来显示消息.我还设置了如果文本框包含无效数据的地方,我选择所有文本并将焦点放在该文本框中,这样当用户重新输入信息时,标签控件就会清除消息.
编辑:
为了解决一些困惑,这里是我的验证方法中的一些代码
if (txtBentLeadsQty.Text == "")
{
//ValidData = true;
BentLeadsCount = 0;
}
else
{
if (int.TryParse(txtBentLeadsQty.Text.Trim(), out BentLeadsCount))
ValidData = true;
else
{
ValidData = false;
lblError.Text = "Bent Lead Qty must be a numeric value";
txtBentLeadsQty.SelectAll();
txtBentLeadsQty.Focus();
}
}
Run Code Online (Sandbox Code Playgroud)
我已经有办法检查数值,并且我输入代码来选择输入的所有文本,如果值不是数字则给予焦点,我只想在文本更改时清除标签控件如果用户点击退格键或开始输入错误发生的原因,我会突出显示该文本框中的所有文本(如果它无效).如果我在每个文本框TextChanged事件中放置代码,我可以这样做,但是为了保存编码,我想知道是否有办法清除标签控件,如果任何文本框从我的验证方法抛出错误而不是添加单个事件20个文本框.注意:并非所有文本框都会输入数据,这些是我放入代码的数量文本框,如果文本框为null,则为变量赋值0.
我编写一个程序将在大显示器上的多个列表框中显示一个数字列表,我的问题是有没有办法自动滚动列表框以显示框中的所有数据?