繁体   English   中英

组合框中的选定项目到datagrid C#SQL

[英]Selected Item in combobox to datagrid C# SQL

我们有一个具有不同音乐流派的组合框。 我们希望在组合框中选择的流派在数据库中显示该流派的歌曲,然后将其显示在数据网格中。

public DataSet sortGenreCBox()
    {
        conn.Open();

        SqlCommand genreBox = new SqlCommand("Select Distinct Genre From Sang", conn);
        SqlDataAdapter adapt = new SqlDataAdapter(genreBox);
        DataSet ds = new DataSet();
        adapt.Fill(ds);

        conn.Close();

        return ds;
    }

该代码显示了我们如何从数据库中提取流派。

public ChooseSong()
    {
        InitializeComponent();

        _DBF = new DatabaseFacade();

        DataSet dsGenreBox = _DBF.sortGenreCBox();
        DataTable dtGenreBox = dsGenreBox.Tables[0];
        sortByGenreCBox.DataContext = dtGenreBox;
        sortByGenreCBox.DisplayMemberPath = dtGenreBox.Columns[0].ToString();

      ...
    }

希望你能帮助:)

您可以从组合框中获取gerne的名称,并将该gerne放入SQL查询中。

创建查询,如下所示:

 SqlCommand genreBox = new SqlCommand("SELECT DISTINCT " + sortByGenreCBox.selectedItem  + " FROM Sang", conn);

并将datagridview.DataSource设置为DataSet ds。

yourDataGridView.DataSource = ds.tables[0];

编辑:

您可以执行以下操作:

public ChooseSong()
{
   string selectedGerne = sortByGerneCBox.selectedItem.text;
   DataSet ds = DatasortGenreCBox(selectedGerne);

然后,您可以执行以下操作:

       public DataSet sortGenreCBox(string selectedGenre){
 SqlCommand genreBox = new SqlCommand("SELECT DISTINCT " + selectedGenre  + " FROM Sang", conn);
}
public DataSet sortGenreCBox()
    {
        conn.Open();

        SqlCommand genreBox = new SqlCommand("Select Distinct" + sortByGenreCBox.SelectedItem + "from Sang", conn);
        SqlDataAdapter adapt = new SqlDataAdapter(genreBox);
        DataSet ds = new DataSet();
        adapt.Fill(ds);

        conn.Close();

        return ds;
    }

当我们写它时,它说它在当前内容中不存在?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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