社区
C#
帖子详情
请教下WPF窗体控件的问题
qq175265664
2015-02-03 05:39:38
请教下各位大哥大姐,如何给动态创建的GRID下的 StackPanel 的子控件赋值
是在控件创建成之后赋值
...全文
132
6
打赏
收藏
请教下WPF窗体控件的问题
请教下各位大哥大姐,如何给动态创建的GRID下的 StackPanel 的子控件赋值 是在控件创建成之后赋值
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lincolnandlinda
2015-02-04
打赏
举报
回复
使用Grid的引用遍历它的Children子控件
exception92
2015-02-04
打赏
举报
回复
也就是 在后台 指定grid或者stackpanel 的DataContext,通过setBinding方法 将值绑定到textblock或者其它,再作为子控件添加到stackpanel中。
exception92
2015-02-04
打赏
举报
回复
使用binding或者在创建成功之后 找到子控件赋值。
以专业开发人员为伍
2015-02-04
打赏
举报
回复
我给你举一个例子。比如说你的Grid下边有一个“加载更多数据”的按钮,但是你希望当已经加载了100条记录之后,让这个按钮失效(不再允许用户按下去了)。你是让你的的“加载更多数据”的后台代码去设置这个按钮的enable呢?还是后台代码根本不管这个约束呢? 当然是后者。后台代码根本不考虑什么约束问题。你只要将按钮的enable属性与表达式“Items.Count()<100”或者表达式“Items.Count()<n”绑定起来(可能需要自己写一个ValueConverter),这样来虽然在设计时需要搞懂 xaml 设计和数据绑定语法,但是你的代码是不需要围着千变万化的前端UI的变化而打转转的。 那样,你问这种问题的机会就少了。
以专业开发人员为伍
2015-02-04
打赏
举报
回复
实际上,任何前端开发都有这种问题。比较低级时,总觉得直接用代码去“动态创建”控件最为方便、感觉自己的代码“好强大”。实际这都是一个错觉。 好的设计模式,是代码尽量不依赖于控件,反而是控件绑定到代码。不论是wpf、silverlight、asp.net、html/javascript等前端程序开发,都是如此。一些框架控件已经可以自动根据代码(ViewModel)绑定集合、绑定属性、以及重复子控件中的属性。 如果一个前端开发工具没有这种功能,还停留在15年前的意识水平,那么你就可以选择新的、傻瓜式地绑定UI的工具了。
以专业开发人员为伍
2015-02-04
打赏
举报
回复
没看懂你具体问什么问题。 其实尽量不要过度考虑什么“动态创建”的问题。前端程序应该反过来考虑设计问题,以 MVVM 设计模式为准,你的大部分程序代码不应该依赖任何控件,相反地是大量界面依赖后台程序代码(也就是ViewModel对象的属性)。控件布局和内容,应该自动双向绑定到 ViewModel 对象上。坚持 MVVM 模式,你的代码才能清爽,程序才能不“绕”,扩展起来也非常方便。 唯一需要学习的,就是如何在 xaml 中将界面控件各个部分绑定到一个 ViewModel 的各个属性上的问题。包括绑定一个集合数据,以及集合中每一个单元作为子控件(模板中的控件)的ViewModel。 一开始,你觉得学习“白手起家,全都从低级的代码来控制控件,没有压力”,甚是有的人觉得写代码越多越关荣。其实这是一个陷阱。代码越少越好、越傻瓜越好。应该花多些时间学习前端数据绑定语法,尽量不要用你的代码去直接操作UI控件。你会很少提出这类问题,会得到真正的实惠。
asp.net知识库
窗体
如何实现web页面的提示保存功能 在ASP.Net中两种利用CSS实现多界面的方法 如何在客户端调用服务端代码 页面一postback,它就显示页面的最顶端,怎样让它定位在某一位置? 如何保证页面刷新后的滚动条位置 清除...
C# 利用委托事件进行
窗体
间的传值
在升级一下的新手做法就是在接受
窗体
中定义一个方法然后通过 调用这个方法来给某个
控件
或者属性赋值。这两种方法都是非安全的低级方式。非常不建议使用。本文我们讲讲如何通过委托事件(非单纯的委托)来解决
窗体
间...
如何优化listview
控件
的内存占用
由于程序需要长期稳定运行,
请教
下如何优化内存
问题
。 旧的数据可以舍弃,但优先考虑保留以方便查看,另外删除旧的行会导致行号变动,从而后台线程中对某一行的操作错误。 不能向
控件
里边插入“过多的”数据,
控件
...
请教
如何在数据绑定时不让combox
控件
触发SelectedIndexChanged事件,
这两天一直被一个
问题
...当用combox数据绑定到一个dataset时就触发了SelectedIndexChanged事件,
请教
如何在数据绑定时不让combox
控件
触发SelectedIndexChanged事件, 本来想设个Flag变量,判断是不是第一次登录,那
关于C#WINFORM登录窗口的做法
前几天做一个程序,由于是基本新手,所以许多不会,现终于完事了,先记录下以便以后复习。 主要内容: 1、两个
窗体
frm_TPCalc(主
窗体
),frm_Login(登录窗口) 2、登录窗口要和主窗口皮肤一致,且主窗口支持...
C#
110,500
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章