using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; using System.Windows.Threading; namespace formula_manage.EX { /// /// Exchange.xaml 的交互逻辑 /// public partial class Exchange : Window { string Log_time = DateTime.Now.ToString("yyyy-MM-dd"); DataTable logdataTable = new DataTable(); //建立RRODUCT缓存 public Exchange() { WindowStartupLocation = WindowStartupLocation.CenterScreen; InitializeComponent(); logdataTable.Columns.Add("Name", typeof(string)); logdataTable.Columns.Add("Length", typeof(int)); logdataTable.Columns.Add("CreationTimeUtc", typeof(string)); logdataTable.Columns.Add("LastWriteTimeUtc", typeof(string)); LOG_file(); } private void LOG_file()//建立列表 { DirectoryInfo loginfo = new DirectoryInfo(System.Environment.CurrentDirectory + "\\Exchange"); //new文件夹 foreach (var item in loginfo.GetFiles()) { DataRow FileRow = logdataTable.NewRow(); FileRow["Name"] = item.Name; FileRow["Length"] = item.Length/1024; FileRow["CreationTimeUtc"] = item.CreationTimeUtc; FileRow["LastWriteTimeUtc"] = item.LastWriteTimeUtc; logdataTable.Rows.Add(FileRow); } gridLog.ItemsSource = logdataTable.DefaultView; } private void DataGrid_gridLogClick(object sender, MouseButtonEventArgs e)//数据表双击事件 { int rownum = gridLog.SelectedIndex;//获取鼠标选中行并定义变量 logR.Visibility = Visibility.Visible; //开启页面遮罩 if (rownum != -1)//判断鼠标定位是否有效 { /*定位选中行及指定列单元格文本信息*/ LOGDATA_file((gridLog.Columns[0].GetCellContent(gridLog.Items[rownum]) as TextBlock).Text.TrimEnd());// } logR.Visibility = Visibility.Hidden; } private void LOGDATA_file(string dat) //读取文件显示到前端 { Logtext.Document = new FlowDocument(); string filePath = System.Environment.CurrentDirectory + "\\Exchange\\"; try { // 使用StreamReader读取文件 using (StreamReader reader = new StreamReader(filePath + dat)) { // 读取文件直到文件的末尾 while (!reader.EndOfStream) { // 添加文件的每一行到RichTextBox Logtext.AppendText(reader.ReadLine() + "\r\n"); } } } catch (Exception ex) { // 处理可能发生的任何异常 MessageBox.Show("Error reading file: " + ex.Message); } } } }