WPF组合框填充从MySQL数据库中的数据 [英] WPF Combo box populate data from mysql database

查看:325
本文介绍了WPF组合框填充从MySQL数据库中的数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图用数据填充组合框,但我不能让它正常工作

I am trying to populate a combo box with data but I cant get it work

public void fillZone()
    {
        string sql = "select location from zone";
        MySqlDataAdapter zonedapter = new MySqlDataAdapter(sql,conn);
        DataTable dt = new DataTable("zone");
        zonedapter.Fill(dt);                

    }

我用fillZone()从MySQL中获取数据,并有它保存在一个dataTable.I要填充一个名为zonecb以上从返回的结果的数据组合框,如下图所示。

I use fillZone() to get data from mysql and have it stored in a dataTable.I want to populate a combobox named zonecb with data from returned result above, as shown below

this.zonecb.ItemsSource = "Location";
this.zonecb.DisplayMemberPath = "Location";

我的XML是如下所示:

my xml is as shown:

<ComboBox Canvas.Left="91" Canvas.Top="57" Height="23" Name="zonecb" Width="200" ItemsSource="{Binding}" />

任何想法?

推荐答案

您需要存取权限DT,我不知道,如果你打电话给你的fillzone仅用于填充组合框,但我建议:

you will need to acces dt, i dont know if you call your fillzone only for filling combobox but i would suggest:

public DataTable fillZone()
{
    string sql = "select location from zone";
    MySqlDataAdapter zonedapter = new MySqlDataAdapter(sql,conn);
    DataTable dt = new DataTable("zone");
    zonedapter.Fill(dt);                
    return dt;
}

public void fillcombo()
{
     DataTable dt = fillZone();
     foreach (DataCell cell in dt)
     { 
       zonecb.add(cell.Value)
     }
}

编辑:

使用同一种方法,但第i个PostgreSQL数据库,通过改变PgsqlDataAdapter到MySqlDataAdapter的,这可能/应该IM

im using a same kind of method, but ith a postgreSql Database, by changing PgsqlDataAdapter to MySqlDataAdapter this might/should work

    public DataSet GetInformation(string str)
    {
        ds = new DataSet("Tables");

        Npgsql.NpgsqlDataAdapter da = new Npgsql.NpgsqlDataAdapter(str, connection);

        da.TableMappings.Add("Table", "Program");
        da.Fill(ds);
        return ds;
    }// send query to database, get table

字符串str就是你的查询。

String str is your Query.

    public DataTable GetInfo()
    {
        string Query = "select location from zone";
        DataSet Set = GetInformation(Query);
        return Set.Tables[0];
    }

现在你王氏所有你需要的数据有一个表/想要的。

now you got a table wih all the data you need/wanted.

   DataTable DT = dBQuery.GetInfo();
   for (int i = 0; i < result.Rows.Count; i++) 
       {          
           zonecd.Items.Add(result.Rows[i].ItemArray[0].ToString()); 
       }

现在你填入你的组合框

这篇关于WPF组合框填充从MySQL数据库中的数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆