SQLite数据库查询方法
// 查询数据的方法
public DataTable SelectData(string tableName, string condition)
{
using (SQLiteConnection connection = OpenConnection()) // 使用using语句确保连接被正确关闭
{
string query = $"SELECT * FROM {tableName} WHERE {condition};"; // 构造查询数据的SQL语句
using (SQLiteCommand command = new SQLiteCommand(query, connection)) // 创建SQLiteCommand对象
{
SQLiteDataAdapter adapter = new SQLiteDataAdapter(command); // 创建SQLiteDataAdapter对象,用于填充数据表
DataTable dataTable = new DataTable(); // 创建数据表对象
adapter.Fill(dataTable); // 填充数据表
return dataTable; // 返回数据表对象
}
}
}
调用查询方法
DataTable dataTable = dbManager.SelectData("Config");
如何在ViewModels绑定数据到表格
```xml
<DataGrid x:Name="myDataGrid" Grid.Row="1" SelectionMode="Single" ItemsSource="{Binding AllocationModels}" AutoGenerateColumns="False" >
<DataGrid.Styles>
<Styles>
<Style Selector="DataGridRow:nth-child(odd)">
<Setter Property="Background" Value="White"/>
<!-- 奇数行背景色 -->
</Style>
<Style Selector="DataGridRow:nth-child(even)">
<Setter Property="Background" Value="#97FFFF"/>
<!-- 偶数行背景色 -->
</Style>
</Styles>
</DataGrid.Styles>
<DataGrid.Columns>
<DataGridTextColumn
Width="auto"
Binding="{Binding XGateIP}"
Header="XGateIP" />
<DataGridTextColumn
Width="auto"
Binding="{Binding Bus}"
Header="Bus" />
<DataGridTextColumn
Width="auto"
Binding="{Binding Address}"
Header="Address" />
<DataGridTextColumn
Width="auto"
Binding="{Binding Type}"
Header="Type" />
<DataGridTextColumn
Width="auto"
Binding="{Binding Groups}"
Header="Groups" />
<DataGridTextColumn
Width="auto"
Binding="{Binding IsText}"
Header="IsText" />
<DataGridTextColumn
Width="auto"
Binding="{Binding Shelves}"
Header="货架" />
<DataGridTextColumn
Width="auto"
Binding="{Binding Level}"
Header="层面" />
<DataGridTextColumn
Width="auto"
Binding="{Binding ListNumber}"
Header="列数" />
</DataGrid.Columns>
<!-- 添加一列包含按钮的模板列 -->
<DataGrid.Columns>
<DataGridTemplateColumn Header="绑定">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="生成"
Background="Green"
/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
```