文本文件搜索,Combobox和DataGridView C#



我在winform上有以下内容:

  • 按钮 - 打开 *.txt文件,代码已经完成并且有效
  • 组合框 - 显示找到的日期
  • DataGridView-显示所选日期的信息

现在我想知道如何编写以下代码来执行以下操作:

  1. 搜索TXT文件以查看日期(无重复(
  2. 在组合盒中显示发现的日期。
  3. 一旦该人从组合框中选择了所需的日期,该日期的信息将在DataGridView中显示。

我很感谢任何帮助,因为我没有工作代码。

到目前为止我拥有什么代码:

private void Historybutton_Click(object sender, EventArgs e)
{
    SSBPgroupBox.Enabled = false;
    DataTable HFdt = new DataTable();
    DialogResult result1 = openFileDialog2.ShowDialog();
    if (result1 == DialogResult.OK) // Test result.
    {
        String Fname = openFileDialog2.FileName;
        string raw_text = System.IO.File.ReadAllText(Fname);

        //add headers to datagrid view
        HFdt.Columns.Add("Sequence");
        HFdt.Columns["Sequence"].DataType = Type.GetType("System.Int32");
        HFdt.Columns.Add("Timing");
        HFdt.Columns["Timing"].DataType = Type.GetType("System.Int32");
    }
    HistorydataGridView.DataSource = HFdt;
}

文本文件的示例:

17/05/15-16:40:13:BLAST DRIVER ON
BLASTING PLAN
PU1053 (0005 DETS):
1/7B7C35;11/7B70B2;21/7B7058;31/7B83A1;41/7B70D1;
BLAST SUMMARY
1 PU, 00005 DETS
DELAYS MIN/MAX IN MS : 00001 / 00041
GAP MIN/MAX IN MS : 00010 / 00010
16:40:32:LINE TEST
CALIBRATION
EXTRA DETS :None
INTERMITTENT CONNECTION DETS :None
TEST DETS
MISSING DETS :None
OUT OF ORDER DETS :None
INCOHERENT DETS :None
DELAY ERRORS DETS :None
16:41:52:TEST END
16:44:02:CHARGE
CHECK ENERGIE
ADDITIONAL MISSING DETS :None
LOW ENERGY DETS :None
ADDITIONAL INCOHERENT DETS :None
16:44:29:FIRE

我想要的是显示日期,如下所示:

17/05/15 - 0005 Dets

当用户选择此日期时,dataGridView将显示:

Sequence    Timing
1           1
2           11
3           21
4           31
5           41

我添加了以下代码以获取列表框中的文本文件。我仍在尝试显示日期:

String Fname = openFileDialog2.FileName;
            string[] raw_text = System.IO.File.ReadAllLines(Fname);
            var lines = new List<string>();
            foreach (var line in File.ReadLines(Fname))
            {
                listBox1.Items.Add(line);
            }
public class Info
    {
        public string _Info { get; set; }
        public DateTime _Date { get; set; }
    }
        List<Info> infos = new List<Info>();
        //Onload - insert infos from *txt file

        List<DateTime> dates = infos.GroupBy(x => x._Date).Select(y => y.First()).Select(z=>z._Date).ToList();
        //no duplicates dates
        List<string> dateInfos = infos.Where(x => x._Date == selectedDate).Select(z=>z._Info).ToList();
        //show infos for selected date

最新更新