如何从visible = false文本框传递值?

时间:2011-04-11 20:01:34

标签: c# winforms textbox

我在一个只保存值的文本框上设置了一个textbox visible = false。尝试转换该值然后将其输入查询时,它在visible = false中失败。这样做的正确方法是什么,因为这显然不是这样。 HEre是将两个文本框值传递给查询的代码。

private void cmdAddAdd_Click(object sender, EventArgs e)
        {
            DataClasses1DataContext db = new DataClasses1DataContext();
            int interestsKey;
            interestsKey = Convert.ToInt32(interestsKeyTextBox.Text);
            InterestAdd newAdd = new InterestAdd();
            newAdd.CaseNumberKey = caseNumberKeyTextBox.Text;
            newAdd.InterestsKey = interestsKey;
            db.InterestAdds.InsertOnSubmit(newAdd);
            db.SubmitChanges();

            LoadCaseNumberInterestsKey(interestsKey, newAdd.CaseNumberKey, false, "interestAdd");

            this.interestAddDataGridView.EndEdit();
            this.interestAddDataGridView.Refresh();
        }

我将文本框行为设置为visible = false。

谢谢,

4 个答案:

答案 0 :(得分:2)

保持文本框可见= true并将其高度和宽度设置为ZERO。

答案 1 :(得分:2)

您可以使用以下替代方案:

  • 将您的文本框启用设置为 false (如果您不希望用户修改它)
  • 使用标签并将其 forecolor backcolor 设置为相同(这使其不可见)

答案 2 :(得分:1)

因为您将可见性设置为false,所以文本框不包含在表单元素中,因此永远不会发布。如果您不关心查看文本框的内容,只需使用隐藏的输入。如果要查看文本框的内容,但不希望更改它,可以使用文本框的readonly属性并将其设置为true。这将使用表单将值发回服务器,并且不允许用户更改文本框中的值。

答案 3 :(得分:0)

您是在设计时在文本框的属性表中设置Visible = false属性,还是在运行时在代码中设置?

如果您在代码中设置文本框Visible = false,例如在Form_Load中,它应该可以工作。