wpf实现可编辑listview
来源:互联网 发布:2016年最流行的网络词 编辑:程序博客网 时间:2024/04/23 16:06
本篇实现了wpf的listview在item中通过与TextBox的绑定完成列表的可编辑功能。网上找了一些方法最终发现msdn提供的一套方案比较好,就在基础上做些修改,使得TextBox长度改变更加流畅及UI与数据源的双向更新。
原下载地址:https://msdn.microsoft.com/zh-cn/library/ms771277.aspx
这里首先在editboxadorner中增加_initWidth用来初始化宽度(xaml设定的Width),用它来解决Adorner太小造成的可点击区域太小,太大造成的文字显示不全。
接下来构造函数中增加参数doubleinitWidth用来接收editbox中传递的宽度,并赋值给_initWidth。
然后修改MeasureOverride,该函数属于虚函数,用来重写绘制的长度。
double width =AdornedElement.DesiredSize.Width + _extraWidth;
if (width < _initWidth +_extraWidth)
width =_initWidth + _extraWidth;
return newSize(width,_textBox.DesiredSize.Height);
之所以这样写是由于显示会比数据长度慢一拍。
在editbox生成_adorner中把自定义控件宽度传进去。_adorner= new EditBoxAdorner(textBlock,_textBox,this.Width);
至于绑定和方法处理代码很详细,这里这说下修改的地方。这里在分别在绑定的两处增加Mode=TwoWay,这样就可以双向更新了,绑定时增加默认Width可根据情况调整。不然改变控件中数值实际上数据源中数据并没有改变。支持,点击ID项就可以进行修改了,为了测试数据源跟随变化增加了测试按钮。
以下是修改后源代码:http://download.csdn.net/detail/u011736517/9925688
- wpf实现可编辑listview
- wpf实现可编辑listview二(通过委托回调自定义控件消息)
- WPF下可编辑Header的Tab控件实现
- 可编辑listView controls
- c++ builder ListView实现可编辑任意列(转)
- 可编辑的ListView控件
- 可编辑的ListView控件
- 实现可编辑表格
- 实现可编辑表格
- 实现可编辑表格
- 可编辑表格实现
- .Net 创建可编辑ListView控件
- 使Delphi ListView列项可编辑
- vb 可编辑列数据的ListView
- Android开发,listview+radiobutton实现单选(选项可编辑)
- C# 双击ListView出现编辑框可编辑,回车确认
- JFreeChart实现可编辑曲线图
- 双击文本实现可编辑
- 测试需要关注的重点
- 强制显示U盘隐藏文件
- Myeclipse10传统的破解方式破解失败的解决方案
- java 语法没有错,但是无法加载进去,一开始没有错的时候就要查看自己的一些String或者有引号“”的代码
- Swift简单列表
- wpf实现可编辑listview
- ConcurrentHashMap解析
- mybatis异常
- Eclipse+ADT+Android SDK 搭建安卓开发环境
- 读取两数之间的质数并统计个数(默认0—100)
- web标准和w3c标准
- Debianjessie软件源
- 在安卓中img的路径有汉字 图片是不显示出来的
- ios学习第一天(五)数组和指针