C#-DataGrid的使用(二)

简介: DataGrid的使用

单元格设置为只读

问题:直接使用IsReadOnly={Binding isReadonly}无法实现,原因:DataGridTextColumn并不是一个真正的可视化元素,所以它的依赖属性如Visibility、IsReadOnly、IsEnabled看起来是Bindable,但它们在Binding通知上并不生效。

解决:可以使用模板的方式实现,或者可以在样式上进行绑定。

<DataGridTextColumn.CellStyle>
    <Style>
        <Setter Property="UIElement.IsEnabled" Value="{Binding IsEnabled,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"></Setter>
    </Style>
</DataGridTextColumn.CellStyle>

删除选中的行,支持多选

在Model中添加属性IsSelected,将其绑定到DataGridRow的IsSelected属性上,删除的时候遍历数据源如果IsSelected==True就移除。

<DataGrid.Resources>
    <Style TargetType="DataGridRow">
        <Setter Property="IsSelected" Value="{Binding IsSelected}"></Setter>
    </Style>
</DataGrid.Resources>
目录
相关文章
|
1月前
|
前端开发 测试技术 C#
WPF/C#:在DataGrid中显示选择框
WPF/C#:在DataGrid中显示选择框
35 0
|
12月前
C#-DataGrid的使用(一)
DataGrid的使用
65 0
C#-DataGrid的使用(三)
C#-DataGrid的使用
45 0
|
SQL 数据库 C#
C#中将DataGrid绑定到SQL Server数据库,显示数据库中的数据
C#中将DataGrid绑定到SQL Server数据库,显示数据库中的数据
C#中将DataGrid绑定到SQL Server数据库,显示数据库中的数据
|
SQL 数据库 C#
C#中将DataGrid上的修改同步到SQL Server数据库中
C#中将DataGrid上的修改同步到SQL Server数据库中
C# DataGrid 控件在winform里显示行号
#region 行绘制事件 ,为DataGridView每行写上序号 /// /// 行绘制事件 ,为DataGridView每行写上序号 /// /// ...
1019 0
|
4月前
|
开发框架 前端开发 .NET
C#编程与Web开发
【4月更文挑战第21天】本文探讨了C#在Web开发中的应用,包括使用ASP.NET框架、MVC模式、Web API和Entity Framework。C#作为.NET框架的主要语言,结合这些工具,能创建动态、高效的Web应用。实际案例涉及企业级应用、电子商务和社交媒体平台。尽管面临竞争和挑战,但C#在Web开发领域的前景将持续拓展。
157 3
|
4月前
|
SQL 开发框架 安全
C#编程与多线程处理
【4月更文挑战第21天】探索C#多线程处理,提升程序性能与响应性。了解C#中的Thread、Task类及Async/Await关键字,掌握线程同步与安全,实践并发计算、网络服务及UI优化。跟随未来发展趋势,利用C#打造高效应用。
173 3