textbox显示问题 我通过一个combobox来显示工号(zgdm),但是在旁边的一个textbox里可以直接显示出该员工所在的科室出来,并不可修改,怎么实现?这两个字段来自一个表(zgda)职工档案表,但是存的时候是要存在另外一个记录表里面?如何实现?在线等,急 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 textBox有个ReadOnly属性,一般是False,改成True,就只读了 除了1搂办法, 你还可以在textBox添加 KEY PRESS 和 KEY DOWN 事件 private void textBox_KeyPress(object sender, KeyPressEventArgs e) { e.Handled = true; }如果要存到另外一个表, 可以用datatableAdapter或者自己写连接字符串 添加 不一定要用textbox嘛,label也可以显示嘛 给个OLEDB的例子,楼主可以参考下:1.如果楼主用comboBox的话,先要从数据库读取工号(zgdm),循环填充到comboBox里面 //把工号添加到填充comboBox1 private void DataInit() { OleDbConnection conn = new OleDbConnection(myConStr); try { conn.Open(); string comStr = "select zgdm from zgda"; OleDbDataAdapter myDA = new OleDbDataAdapter(comStr, conn); DataSet myDS = new DataSet(); myDA.Fill(myDS, "zgdm"); DataTable myDT = myDS.Tables["zgdm"]; for (int i = 0; i < myDT.Rows.Count; i++) { //循环添加zgdm到comboBox中 comboBox1.Items.Add(myDT.Rows[i][0]); } } catch { MessageBox.Show("数据库有点小问题!", "请注意", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } finally { if (conn.State == ConnectionState.Open) conn.Close(); } }数据添加完后,要在comboBox的SelectedIndexChanged事件中让数据显示在textBox里面。注意:textBox的Enable属性要设置为false事件如下: private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { if (comboBox1.SelectedIndex != -1 ) { string SearchStr; //不知道职工科室是什么字段名,用zgks代替,还有不知道zgdm的数据类型,默认int型。 SearchStr = "select zgks from zgda where zgdm="+comboBox1.Text; OleDbConnection conn = new OleDbConnection(myConStr); try { conn.Open(); OleDbDataAdapter myDA = new OleDbDataAdapter(SearchStr, conn); DataSet myDS = new DataSet(); myDA.Fill(myDS); //把zgks赋值到txtBox中。 txtBox1.Text=myDS.Tables[0].Rows[0][0].ToString(); } catch { MessageBox.Show("请输入正确的格式!", "请注意", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } finally { if (conn.State == ConnectionState.Open) conn.Close(); } } }希望对楼主有所帮助。 求简单的FTP服务器,顶者有分 问个很多人碰到的问题 求助 刷新问题,谁解决了,谁独吐(分不多) 如何从另一个DataTable取值 There is no source code available for the current location.是什么错误? rsa 数据加密问题,高手请进-关于公钥的 Modulus Exponent 获取问题 WPF,TabControl如何调整列表头位置? 带参数的Sql语句的问题 在线等 很急 麻烦大哥们解决下 Windows API SetFocus设置焦点问题 关于combobox控件的问题 委托调用?
{
e.Handled = true;
}
如果要存到另外一个表,
可以用datatableAdapter
或者自己写连接字符串 添加
1.如果楼主用comboBox的话,先要从数据库读取工号(zgdm),循环填充到comboBox里面 //把工号添加到填充comboBox1
private void DataInit()
{
OleDbConnection conn = new OleDbConnection(myConStr);
try
{
conn.Open();
string comStr = "select zgdm from zgda";
OleDbDataAdapter myDA = new OleDbDataAdapter(comStr, conn);
DataSet myDS = new DataSet();
myDA.Fill(myDS, "zgdm");
DataTable myDT = myDS.Tables["zgdm"];
for (int i = 0; i < myDT.Rows.Count; i++)
{
//循环添加zgdm到comboBox中
comboBox1.Items.Add(myDT.Rows[i][0]);
}
}
catch
{
MessageBox.Show("数据库有点小问题!", "请注意", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
finally
{
if (conn.State == ConnectionState.Open)
conn.Close();
}
}数据添加完后,要在comboBox的SelectedIndexChanged事件中让数据显示在textBox里面。
注意:textBox的Enable属性要设置为false
事件如下:
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedIndex != -1 )
{
string SearchStr;
//不知道职工科室是什么字段名,用zgks代替,还有不知道zgdm的数据类型,默认int型。
SearchStr = "select zgks from zgda where zgdm="+comboBox1.Text;
OleDbConnection conn = new OleDbConnection(myConStr);
try
{
conn.Open();
OleDbDataAdapter myDA = new OleDbDataAdapter(SearchStr, conn);
DataSet myDS = new DataSet();
myDA.Fill(myDS);
//把zgks赋值到txtBox中。
txtBox1.Text=myDS.Tables[0].Rows[0][0].ToString();
}
catch
{
MessageBox.Show("请输入正确的格式!", "请注意", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
finally
{
if (conn.State == ConnectionState.Open)
conn.Close();
}
}
}
希望对楼主有所帮助。