从windows app中的usercontrol访问值

时间:2013-01-18 05:42:11

标签: c# winforms user-controls

我有usercontrol名为AddRowform名为TimeSheetTimesheetsave_btn个事件,点击{{ 1}} save_btn中输入的值应写入数据库,但我无法访问usercontrol

中的值

下面是代码

usercontrol

此事件在public void save_btn_Click(object sender, EventArgs e) { SqlCommand cmdinsert = new SqlCommand("insert into TimeSheet (Project_Name,Activity_Name, Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday) values (@Project_Name,@Activity_Name, @Monday,@Tuesday,@Wednesday,@Thursday,@Friday,@Saturday,@Sunday) ", con); cmdinsert.Parameters.AddWithValue("@Project_Name", add.project_cbox.SelectedIndex); cmdinsert.Parameters.AddWithValue("@Activity_Name", activity_cb.SelectedIndex); cmdinsert.Parameters.AddWithValue("@Monday", add.monday_txt_val); cmdinsert.Parameters.AddWithValue("@Tuesday", add.tuesday_txt_val); cmdinsert.Parameters.AddWithValue("@Wednesday", add.wednesday_txt.Text); cmdinsert.Parameters.AddWithValue("@Thursday", add.thursday_txt.Text); cmdinsert.Parameters.AddWithValue("@Friday", add.friday_txt.Text); cmdinsert.Parameters.AddWithValue("@Saturday", add.saturday_txt.Text); cmdinsert.Parameters.AddWithValue("@Sunday", add.sunday_txt.Text); con.Open(); cmdinsert.ExecuteNonQuery(); con.Close(); } 但是值为空字符串...我只是无法访问该值,是否有解决方案?这是窗口应用程序

timesheet

public string monday_txt_val { get { return monday_txt.Text; } set { monday_txt.Text = value; } } 是在输入值后动态创建的monday_txt,但它正在读取一个空字符串,尽管我在textbox中输入了一个值,当它被传递时textbox的{​​{1}}值为空字符串,如何解决此问题?

我能想到访问form的唯一方法是在monday_txt中创建monday_txt的实例..但是当创建新实例时,我将无法获取值,请帮助

1 个答案:

答案 0 :(得分:0)

好的,所以首先你要说你动态创建文本框,但输入值后...我不明白。如果您尚未创建文本框,那么您是否输入了值?这是1. 2你可以尝试像按钮上的Response.Write单击(我使用Web表单,所以我不知道你如何调试),看看你的文本框中是否有任何东西。如果你有,它没有显示,那么首先尝试按代码设置文本框..看看你是否可以访问它。此外,如果您动态创建文本框,请查看创建文本框的位置。如果它不在表单元素中,则无法访问它。这就是我所能想到的。您需要了解更多详细信息并显示更多代码。