首页 文章

使用C#wpf中的datagrid信息填充MYSQL数据库

提问于
浏览
0

相信我,我用Google搜索了它 . 很明显,win-forms上使用的C#代码由于半明显的原因而无法在C#WPF上运行 . 但是,如何使用数据网格中的修改或全新数据填充MYSQL表格并不明显 . 它反过来工作得很好(用MYSQL数据填充数据网格) .

private void Save_Click(object sender, RoutedEventArgs e)
    {
        string sqlcon = "datasource = localhost; port = 3306; username = root; password = Avalisque";
        string queryadd = "insert into users.login (user_name,pass_word,gender,first_name,second_name,third_name,surname,security_question,answer);";
        MySqlConnection con = new MySqlConnection(sqlcon);
        MySqlCommand cmd = new MySqlCommand(queryadd, con);
        MySqlDataAdapter da = new MySqlDataAdapter(cmd);
        DataSet ds = new DataSet();


        try
        {
            con.Open();
            cmd.ExecuteNonQuery();

            DataTable dt = new DataTable("login");
            da.Fill(ds);
            DG.datasource = ds.Tables[0];
            da.Update(dt);

        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }


    }

(DG是数据网格) . 这是错误消息:

'System.Windows.Controls.DataGrid'不包含'datasource'的定义,并且没有扩展方法'datasource'接受类型为'System.Windows.Controls.DataGrid'的第一个参数(您是否缺少using指令或程序集引用?)

任何形式的帮助非常感谢 . 有点绝望在这里 . 拜托,谢谢 .

2 回答

  • 0

    我想你在找 DG.ItemsSource = ds.Tables[0].AsEnumerable();

    您收到该错误,因为System.Windows.Controls.DataGrid没有名为 datasource 的属性 .

    DataTableExtensions.AsEnumerable向您展示如何将DataTable转换为T:DataRow的Enumarable

  • 0

    我认为你有一个属性ItemsSource .

    另外不要忘记wpf适用于mvvm模式 . 实际上,您的itemsource可能应该是viewModel中可用的ObservableCollection .

相关问题