您用过这个牛逼的WPF拖拽库吗?


     18a04c92b76f3340b5dacb7eeb290262.png    

GongSolutions.WPF.DragDrop

一个使您能在WPF里更方便的使用拖拽功能的框架

支持 .NET Framework 4.6.2+, .NET Core 3.1, .NET 5 and .NET 6 (只能在Windows平台使用)

4789b7bd4523569348bd645af2df43dc.png

1. 特色

  1. MVVM配合使用:拖放逻辑可以放在ViewModel中。使用附加属性绑定到ViewModel中的拖放处理方法,而无需在代码隐藏中放置相关代码。

  2. 可用于多选。

  3. 可以在同一控件内拖动数据以重新排序,也可以在(不同)控件之间拖动数据。

  4. 可用于 ListBox, ListView, TreeView, DataGrid 和其他任何 ItemsControl

  5. 可以将数据项插入、移动或复制到相同/另一个控件(相同数据项类型)的集合中。

  6. 可以显示装饰器,为用户提供正在进行的操作的视觉反馈。

  7. 可以显示拖动项目的预览(预览始终可见)。

  8. 具有合理的默认值,因此您可以为常见操作编写更少的代码。

2. 让我们开始体验吧

  1. 构建[1] 解决方案 gong-wpf-dragdrop

  2. 如何使用...[2]

  3. 发布和发布说明[3]

  4. 历史发布记录[4]

  5. 强命名[5]

  6. Wiki[6]

  7. License[7]

3. License

版权由Jan Karger, Steven Kirk和其他贡献者所有.

GongSolutions.WPF.DragDrop[8] 基于BSD 3-Clause协议. 有关该协议请参考说明LICENSE[9].

4. 部分操作截图

4d232b1175f7327f419bf7e4586836ea.gif
gif01
bebecac532c59082c4d4c7f5b2501ab6.png
screenshot01
50f89458f51feec2eab172232fc14e76.png
screenshot02
df210c6d0eae5f760b420c32327ed66f.png
screenshot03
77679797d379841d829a392ac2b7d203.png
screenshot04

5. 仓库

作者:Jan Karger, Steven Kirk

License:BSD 3-Clause License[10]

仓库地址:https://github.com/punker76/gong-wpf-dragdrop

84dc0780a1508059a3473d8b6f14a23c.png
screenshot04

参考资料

[1]

构建: https://github.com/punker76/gong-wpf-dragdrop/wiki/Building

[2]

如何使用...: https://github.com/punker76/gong-wpf-dragdrop/wiki/Usage

[3]

发布和发布说明: https://github.com/punker76/gong-wpf-dragdrop/releases

[4]

历史发布记录: https://github.com/punker76/gong-wpf-dragdrop/wiki/Release-History

[5]

强命名: https://github.com/punker76/gong-wpf-dragdrop/wiki/Strong-naming

[6]

Wiki: https://github.com/punker76/gong-wpf-dragdrop/wiki

[7]

License: https://github.com/punker76/gong-wpf-dragdrop/blob/develop/LICENSE

[8]

GongSolutions.WPF.DragDrop: https://github.com/punker76/gong-wpf-dragdrop

[9]

LICENSE: https://github.com/punker76/gong-wpf-dragdrop/blob/develop/LICENSE

[10]

BSD 3-Clause License: https://github.com/punker76/gong-wpf-dragdrop/blob/develop/LICENSE

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现 WPF DataGrid 行拖拽并将其存储到 MySQL 数据库中,你可以按照以下步骤进行: 1. 在 WPF 窗口中添加 DataGrid 控件,并绑定到 MySQL 数据库中的数据。 2. 启用 DataGrid 控件的行拖拽功能。你可以使用 WPF 自带的 DragDrop 类或者使用第三方来实现。 3. 当用户拖拽行时,获取被拖拽行的数据,并将其存储到 MySQL 数据库中。你可以使用 MySQL 数据库提供的 ADO.NET API 来实现数据的插入操作。 以下是代码示例: ```csharp private void DataGridRow_MouseMove(object sender, MouseEventArgs e) { if (e.LeftButton == MouseButtonState.Pressed) { var row = sender as DataGridRow; if (row != null) { var data = row.Item as MyData; if (data != null) { DragDrop.DoDragDrop(row, data, DragDropEffects.Move); } } } } private void DataGrid_Drop(object sender, DragEventArgs e) { var data = e.Data.GetData(typeof(MyData)) as MyData; if (data != null) { // 将数据插入到 MySQL 数据库中 MySqlConnection connection = new MySqlConnection("connection_string"); MySqlCommand command = new MySqlCommand("INSERT INTO my_table (column1, column2) VALUES (@value1, @value2)", connection); command.Parameters.AddWithValue("@value1", data.Value1); command.Parameters.AddWithValue("@value2", data.Value2); connection.Open(); command.ExecuteNonQuery(); connection.Close(); } } ``` 在上面的代码中, `MyData` 是你的数据模型。 `DataGridRow_MouseMove` 和 `DataGrid_Drop` 方法分别处理行拖拽和数据存储操作。你需要将这些方法与 DataGrid 控件的相关事件关联起来。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值