好的,所以我一直关注我的应用程序的总数是基于c#的winforms方面,因为我的应用程序基于wpf。然而,即使我的应用程序工作正常,我被告知有一种更好的方法来使用MVVM绑定我的文本框。然而,我一直很难找到基于wpf的MySQL相关联系,涵盖了MVVM数据绑定。
这是我目前的做事方式,到目前为止一切正常。显然可能会更好......
string sqlcon = "datasource = localhost; port = 3306; username = root; password = root";
string query = "Select * from users.login where tag = '" + this.tag.Text + "' ;";
new MySqlConnection(sqlcon);
MySqlCommand cmd = new MySqlCommand(query, con);
MySqlDataReader rdr;
try
{
con.Open();
rdr = cmd.ExecuteReader();
MessageBox.Show("Saved");
while (rdr.Read())
{
//Declarations
string susername = GetString(rdr, "username");
string spassword = GetString(rdr, "password");
string ssecurity = GetString(rdr, "question");
string sanswer = GetString(rdr, "answer");
//Binding strings to textboxes
username.Text = susername;
password.Text = spassword;
question.Text = ssecurity;
answer.Text = sanswer;
}
con.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
也许我找不到合适的地方,但我找不到任何与xaml有关的MySQL数据绑定的具体内容。在wpf中执行此操作的最佳方法是什么?即使只是一个例子也会做得很好。这样我至少可以得到一个想法。
答案 0 :(得分:1)
更简单的方法是使用实体框架:
http://msdn.microsoft.com/en-us/data/ef.aspx
MVVM Entity Framework tut
http://msdn.microsoft.com/en-us/data/jj574514.aspx
如果你真的想要使用它,首先尝试获得它的一些知识。
我第一次以同样的方式做到了,但是现在我用它,我发现它更容易 此外,当使用MVVM时,您只需为实体框架对象创建一个项目,并链接到您的模块。
如果你想像现在这样做,你可以这样做:
一些关键词:
http://www.codeproject.com/Articles/165368/WPF-MVVM-Quick-Start-Tutorial
http://www.codeproject.com/Articles/124160/Using-WPF-MVVM-for-Database-Access
查看强>
将项目来源添加到您的对象,
ItemsSource="{Binding}"
并尝试从那里加载的数据库中获取内容,这已经是一大步了。