wpf实现可编辑listview

本篇实现了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

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: WPF (Windows Presentation Foundation) ListView是一种非常功能强大的控件,可以允许用户进行编辑操作。编辑操作可以包括添加、修改和删除项目。 在WPFListView控件中,有两种编辑模式:行编辑模式和单元格编辑模式。 行编辑模式是指用户可以更改整个行的内容,包括行中的所有列。可以通过将ListView控件的IsEditable属性设置为true来启用行编辑模式。此时,用户可以双击某一行来进行编辑,也可以通过键盘快捷键来进行操作。 单元格编辑模式是指用户可以更改特定列中的单元格内容。可以通过将ListView控件的View属性设置为GridView,并将GridViewColumn的IsEditable属性设置为true来启用单元格编辑模式。此时,用户可以单击单元格来进行编辑。 总之,WPF ListView控件具有强大的可编辑功能,可以让用户在应用程序中进行更方便的数据管理和编辑操作。 ### 回答2: WPF(Windows Presentation Foundation)是Microsoft开发的用户界面框架,可帮助开发人员创建富客户端应用程序。其中一个重要的功能是ListView控件。ListView控件是用于显示项目列表的控件,其中每个项目可以具有多个属性。在默认情况下,这些属性只能被看作文本,并为只读状态。但是,WPF ListView控件可以通过启用编辑模式来使每个项目的属性可编辑。 启用ListView控件的编辑模式有两种方法: 1.设置ListView控件的IsEditable属性为true 2.将ListView控件的ItemTemplate设置为一个带有编辑控件(例如TextBox、ComboBox等)的DataTemplate 使用第一种方法时,启用编辑模式后,可双击项目或选择项目并按F2来开始编辑。此时,项目文本将变为编辑控件并显示在ListView控件中。您可以键入或选择新值并按Enter键来保存更改。 使用第二种方法时,使用自定义DataTemplate来呈现每个项目。该模板可以包括多个编辑控件,以便可以编辑多个属性。在编辑模式下,单击项目时,所有与该项目相关的控件将变为可编辑状态。您可以修改所需的属性,然后按Enter键或单击“完成”按钮来保存更改。 总之,WPF ListView控件可编辑,且启用编辑模式的方法非常简单。它使用户能够轻松编辑列表项,并帮助开发人员提高应用程序的可用性和交互性。 ### 回答3: WPF(Windows Presentation Foundation)是一种用于构建桌面应用程序的技术。在WPF中,可以使用ListView控件来实现数据绑定和呈现功能。ListView是一种灵活的控件,可以用于显示和编辑列表数据。 ListView控件提供了许多功能,其中包括可编辑特性。ListView编辑功能使得用户可以在List中添加、编辑和删除数据项。对于这些数据项的增删改操作,WPF提供了一些内置的控件和方法,比如TextBox、CheckBox、ComboBox等。使用这些控件与ListView控件结合使用,可以轻松实现ListView编辑功能。 具体实现方法是:首先,需要在ListView中启用编辑功能。可以通过设置ListView的IsEditable属性来实现。然后,在ListView中添加需要编辑的数据项。通过设置ListView的ItemTemplate属性,可以定义编辑每个数据项时所使用的控件,例如TextBox、CheckBox或ComboBox。使用这些控件,可以让用户输入或选择需要编辑的数据。最后,将更改保存到原有的数据中。 总之,WPF中的ListView控件提供了非常方便的编辑功能,可以让用户轻松地对列表数据进行管理和编辑。无论是初学者还是有经验的开发人员,都可以受益于ListView的可编辑功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值