C#中多视图联动控制——关于C#中的MVC

 导师提倡使用可视化的编程方法进行开发,这样开发效果非常快,我也深感到了这样开发的好处:效率高,手动编写代码少;但万事都是一把双刃剑,可视化开发的缺点是:东西封装得太好了,你虽然可以运用其进行快速开发,但是却难以得知其中的运行机理,以至于出现问题的时候无从下手。想要写好可视化开发的程序,这就要求程序员需要有深厚的知识底蕴。

    今天的重点来了:创建数据源(xsd)文件后,即可用可视化的方式绑定数据源,可以直接从数据源中拖出相应字段,然后IDE便自动对控件进行了绑定(数据源拖拽在视图-》其他窗口-》数据源中,PS:找了我半天)。我的项目在左侧放置了一个GridView,右侧放置一系列单行字段控件,两部分绑定了相同的BindingSource。这样,在GridView中用鼠标选定了特定行后,右侧的一系列单行字段控件也会随着改变。这时,有一个需求是需要通过输入信息来自动定位左侧的相关字段。发现GridView中只有一个selecet属性与之相关,设置其为true后,发现只是该行的背景色发生了变化,而并未真正的选定,导致左侧的一系列控件无法随之进行变化。此时,引发了我的思考——.NET提供的这一套GridView(V)-BindingSource(C)-DataTable(M,DataTable由TableAdapter所控制)控件,实际上使用了MVC设计模式,这样,要想改变View的显示状态,特别是这种带有联动性的状态(即左侧的Gridview和右侧的一系列控件有显示同一性),则应该在Control模块中控制。果不其然,在BindingSource中有Position这一项,而这一项即为选中项的索引值,这与两者能够实现联动密切相关,通过控制这一属性,即可达到任务目标。

    Over,遇到问题要思其本源,切勿因难而退。

转载于:https://www.cnblogs.com/ciangcic/p/3526930.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值