public MainForm() { InitializeComponent(); log = LogWriter.Instance; db = new Database.Database(); db.EmptyFile(); CreateColumnsInGrid("db"); for (int x = 0; x <= filters.GetCountUserFilters() - 1; x++) { tree.Nodes[1].Nodes[0].Nodes.Add(filters.GetUserFilters(x).name); tree.Nodes[1].Nodes[0].Nodes[x].Tag = filters.GetUserFilters(x); } //Это на будущее tree.Nodes[1].Tag = filters.GetSystemFilters(0); //IP tree.Nodes[1].Nodes[0].Tag = filters.GetSystemFilters(1); //TCP/UDP tree.Nodes[1].Nodes[1].Tag = filters.GetSystemFilters(2); //ICMP tree.Nodes[1].Nodes[2].Tag = filters.GetSystemFilters(3); //IGMP tree.Nodes[1].Nodes[3].Tag = filters.GetSystemFilters(5); //OTHER tree.Nodes[2].Tag = filters.GetSystemFilters(4); //ARP tree.ExpandAll(); tree.SelectedNode = tree.Nodes[1].Nodes[0]; filteredRecords = new List <int>(); activeFilter = new filters_struct(); activeFilter.proto = PacketType.TCPandUDP; //filter.protocol = PacketType.TCPandUDP; }
private void tree_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { PacketType pt; if (Convert.ToString(e.Node.Tag) == "info") { return; } activeFilter = (filters_struct)(e.Node.Tag); filteredRecords = new List <int>(); if (!activeFilter.userFilter) { for (int i = 0; i <= db.GetCountRows() - 1; i++) { pt = db.GetValueProto(i); if ((pt == activeFilter.proto) || (activeFilter.proto == PacketType.TCPandUDP) && ((pt == PacketType.TCP) || (pt == PacketType.UDP))) { filteredRecords.Add(i); } } } if (activeFilter.userFilter) { for (int i = 0; i <= db.GetCountRows() - 1; i++) { if (filters.Check(activeFilter.id, Convert.ToInt32(db.GetValuePortIn(i)), Convert.ToInt32(db.GetValuePortOut(i)))) { //if ((db.GetValuePortIn(i)==activeFilter.ports)||(db.GetValuePortOut(i)==activeFilter.ports)) filteredRecords.Add(i); } } } if (grid.Rows.Count > 0) { grid.FirstDisplayedScrollingRowIndex = 0; } grid.RowCount = filteredRecords.Count; grid.Refresh(); }