diff --git a/View/ParameterSetView.xaml.cs b/View/ParameterSetView.xaml.cs index 57cde4d..dc396fb 100644 --- a/View/ParameterSetView.xaml.cs +++ b/View/ParameterSetView.xaml.cs @@ -43,7 +43,7 @@ namespace DyeingComputer.View SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径 SQLiteHelpers.Open(); //打开数据库 - string sql_script = "select * from Parameters"; + string sql_script = "select * from Parameters order by ParameterID asc"; if (sql != null) sql.Clear(); //清空缓存 sql = SQLiteHelpers.ExecuteDataSet(sql_script, null); //读取计划表写入缓存 diff --git a/View/SysSetView.xaml b/View/SysSetView.xaml index 2e054ae..39ad78a 100644 --- a/View/SysSetView.xaml +++ b/View/SysSetView.xaml @@ -4,9 +4,51 @@ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:DyeingComputer.View" - mc:Ignorable="d" + xmlns:lang="clr-namespace:DyeingComputer.Properties" + mc:Ignorable="d" Loaded="UserControl_Loaded" d:DesignHeight="630" d:DesignWidth="1280" VerticalAlignment="Top"> - + + + + + + + + + + + + + + + diff --git a/View/SysSetView.xaml.cs b/View/SysSetView.xaml.cs index a4e82ea..b45a573 100644 --- a/View/SysSetView.xaml.cs +++ b/View/SysSetView.xaml.cs @@ -1,10 +1,12 @@ using System; using System.Collections.Generic; +using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; +using System.Windows.Controls.Primitives; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; @@ -12,6 +14,7 @@ using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; +using static DyeingComputer.UserClass.SqliteHelper; namespace DyeingComputer.View { @@ -23,6 +26,72 @@ namespace DyeingComputer.View public SysSetView() { InitializeComponent(); + set_sql(); + } + + private SQLiteHelper SQLiteHelpers = null; //定义数据库 + private readonly string DBAddress = Environment.CurrentDirectory + "\\DataBase\\800COMPUTER.db"; //数据库路径 + DataSet sql; //内存数据缓存 + + public void set_sql() + { + SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径 + SQLiteHelpers.Open(); //打开数据库 + + string sql_script = "select * from System order by ParameterID asc"; + + if (sql != null) sql.Clear(); //清空缓存 + sql = SQLiteHelpers.ExecuteDataSet(sql_script, null); //读取计划表写入缓存 + if (sql != null) Grid.ItemsSource = sql.Tables[0].DefaultView; //转换显示计划表 + SQLiteHelpers.Close(); //关闭连接 + + } + + private void Grid_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)//数据表输入事件 + { + string ID; + string newValue = (e.EditingElement as TextBox).Text;//获得输入单元格信息 + + int rownum = Grid.SelectedIndex;//获取鼠标选中行并定义变量 + if (rownum != -1)//判断鼠标定位是否有效 + { + ID = (Grid.Columns[1].GetCellContent(Grid.Items[rownum]) as TextBlock).Text;//定位第0列, + + Dictionary datagrid_v = new Dictionary();//缓存函数 + datagrid_v.Add("Value", newValue); + SQLiteHelpers = new SQLiteHelper(DBAddress); //数据库连接路径 + SQLiteHelpers.Open(); //打开数据库 + SQLiteHelpers.Update("System", datagrid_v, "ParameterID ='" + ID + "'", null);//更新 + SQLiteHelpers.Close();//关闭数据库 + } + } + + private void UserControl_Loaded(object sender, RoutedEventArgs e)//打开页面时的操作 + { + DataGridRow dr = (DataGridRow)Grid.ItemContainerGenerator.ContainerFromIndex(0);//取第0行单元格 + DataGridCellsPresenter presenter = GetVisualChild(dr); + DataGridCell cell = (DataGridCell)presenter.ItemContainerGenerator.ContainerFromIndex(3); //取第3列每行单元格 + cell.Focus(); + Grid.SelectedIndex = 0; + } + public static T GetVisualChild(Visual parent) where T : Visual + { + T child = default(T); + int numVisuals = VisualTreeHelper.GetChildrenCount(parent); + for (int i = 0; i < numVisuals; i++) + { + Visual v = (Visual)VisualTreeHelper.GetChild(parent, i); + child = v as T; + if (child == null) + { + child = GetVisualChild(v); + } + if (child != null) + { + break; + } + } + return child; } } }