将组合框选定项作为参数值传递给winform c#中的类函数

时间:2014-03-11 04:13:36

标签: c# winforms combobox

我有一个组合框,允许用户选择月份和年份:

enter image description here

当我点击检查按钮时,程序会将月份和年份发送到dbConnect.Select类,程序会在那里执行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(字符串月,字符串年份)没有任何值。

如果我的代码中有任何错误,有人可以纠正我吗?

2 个答案:

答案 0 :(得分:1)

按如下所示修改您的代码并执行并相应地执行

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());
}  

我认为现在你可以理解使用什么价值了。

答案 1 :(得分:0)

SelectedItem应该来自你的组合框,而不是来自List

   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.
    }