Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# wpf应用程序的动态绑定源_C#_Sql Server_Data Binding - Fatal编程技术网

C# wpf应用程序的动态绑定源

C# wpf应用程序的动态绑定源,c#,sql-server,data-binding,C#,Sql Server,Data Binding,我正在寻找一些关于如何用C#构建wpf应用程序的建议 我们目前有五个sql数据库(2005年),它们都具有相同的数据结构(表、字段和视图等),但它们的名称不同(A、L、M、T0)。我尝试使用接口项目和数据访问项目的模型,因为我希望继续将数据访问项目的工作用于其他项目/屏幕 我已经成功地创建了基于数据集、sql类或实体框架的项目来更新其中一个数据库中的数据 现在我想创建一个窗口,在这个窗口中,您可以从一个组合框中选择要更新的数据源,然后设置窗口数据源,例如,供应商数据显示在表单上并可以更新 我可以

我正在寻找一些关于如何用C#构建wpf应用程序的建议

我们目前有五个sql数据库(2005年),它们都具有相同的数据结构(表、字段和视图等),但它们的名称不同(A、L、M、T0)。我尝试使用接口项目和数据访问项目的模型,因为我希望继续将数据访问项目的工作用于其他项目/屏幕

我已经成功地创建了基于数据集、sql类或实体框架的项目来更新其中一个数据库中的数据

现在我想创建一个窗口,在这个窗口中,您可以从一个组合框中选择要更新的数据源,然后设置窗口数据源,例如,供应商数据显示在表单上并可以更新

我可以考虑构建一个基于组合中所选值的方法,该方法查找连接字符串并创建一个供应商对象,然后将该对象绑定到窗口控件

我还查看了集合视图源代码,但看不到如何动态设置它的直接方法


选择我称之为“运行时”绑定的最佳方法是什么。当然,am链接和示例会很好。

您不需要任何“运行时绑定”,不管这意味着什么。您需要的是一个适当的ViewModel,它可以公开需要在UI中显示的数据,然后您可以使用来自您想要的任何数据源的任何数据填充该ViewModel。很抱歉,“运行时绑定”试图克服关于数据源的决定是由用户选择的这一事实。我对面向对象编程的基本原理没有深入的了解。我看过你在一些早期帖子中建议的几篇MVVM文章,并在谷歌上搜索了这个主题,我明白了原则。我唯一的评论是MVVM看起来有点复杂,因为按照您的标准,它是一个非常简单的更新应用程序。然而,我可能会尝试通过这个原则来扩展我有限的知识和技能,你能推荐其他好的“简单”教程吗?是Reed Copsey的优秀系列文章,解释了从Winforms(比如Winforms)转向WPF和MVVM时需要的思维转变。乍一看,MVVM似乎“需要更多的代码”,但你很快就会意识到事实恰恰相反。最后,它只是简单、简单的属性和
INotifyPropertyChanged
,而不是像其他范例一样,在UI和应用程序的其余部分之间传递数据所需的大量样板文件。此外,在MVVM中,您可以抽象UI,因此不需要在代码中操作任何UI元素(实际上是具有复杂行为和生命周期的复杂类)