wpf datagrid行拖拽 mysql
时间: 2023-07-07 14:40:12 浏览: 179
C# WPF DataGrid行拖拽顺序交换
要实现 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 控件的相关事件关联起来。
阅读全文