繁体   English   中英

将组合框所选项目作为参数值传递给Winform C#中的类函数

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM