[英]Pass combobox selected item as parameter value to class function in winform c#
我有一个组合框,允许用户选择月份和年份:
当我单击复选按钮时,该程序会将月份和年份发送到dbConnect.Select类,该程序在其中执行选择查询。
private void cmdSend_Click(object sender, System.EventArgs e)
{
List<string>[] list;
list = dbConnect.Select(month_list.SelectedItem.ToString(),year_list.SelectedItem.ToString());
//submit the value month and year to dbConnect.select class.
}
我已经逐行调试了代码,并找出了这一行
list = dbConnect.Select(month_list.SelectedItem.ToString(),year_list.SelectedItem.ToString());
确实拥有价值。 它假定将该值作为参数month和year传递给dbConnect.select类。
public List<string>[] Select(string month,string year)
{
string query = "SELECT * FROM page_counter WHERE month = @month AND year = @year;";
//some operations
}
但是我发现在我开始调试时,公共List [] Select(字符串月份,字符串年份)没有任何值。
如果我的代码有任何错误,有人可以纠正我吗?
如下修改您的代码,然后执行并做相应的操作
private void cmdSend_Click(object sender, System.EventArgs e)
{
MessageBox.show(month_list.SelectedItem.ToString());
MessageBox.show(month_list.SelectedText.ToString());
MessageBox.show(month_list.SelectedValue.ToString());
MessageBox.show(year_list.SelectedItem.ToString());
MessageBox.show(year_list.SelectedText.ToString());
MessageBox.show(year_list.SelectedValue.ToString());
}
我认为现在您可以了解要使用的价值了。
SelectedItem应该来自您的组合框,而不是来自列表
private void cmdSend_Click(object sender, System.EventArgs e)
{
List<string>[] list;
list = dbConnect.Select(cmdSendMonth.SelectedItem.ToString(),cmbYear.SelectedItem.ToString());
//submit the value month and year to dbConnect.select class.
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.