private void listTemplates_SelectedIndexChanged(object sender, System.EventArgs e) { int index = listTemplates.SelectedIndex; if (index == -1) { btnDelete.Enabled = false; return; } btnDelete.Enabled = true; listDetails.Items.Clear(); ushort templateId = (ushort)listTemplates.SelectedItem; netflow.V9Template t = null; foreach (netflow.V9Template tt in v9Templates) { if (tt.TemplateId == templateId) { t = tt; break; } } if (t == null) { MessageBox.Show(this, "Internal inconsistency!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } ArrayList fields = t.GetFields(); foreach (netflow.V9TemplateField field in fields) { listDetails.Items.Add(FormV9Template.TemplateItem[field.Type]); } }
private void btnAdd_Click(object sender, System.EventArgs e) { ushort id; ushort frequency; try { id = Convert.ToUInt16(textBoxTemplateId.Text); frequency = Convert.ToUInt16(textBoxFrequency.Text); if (id < 256) { MessageBox.Show(this, "Invalid Template Id"); textBoxTemplateId.Focus(); DialogResult = DialogResult.None; return; } foreach (netflow.V9Template t in parent.TemplateList) { if (id == t.TemplateId) { MessageBox.Show(this, "The specified template id is already used."); textBoxTemplateId.Focus(); DialogResult = DialogResult.None; return; } } if (frequency <= 10) { if (MessageBox.Show(this, "The template send frequency is too low. Are you sure you want to do this?", "Confirm", MessageBoxButtons.YesNo) == DialogResult.No) { textBoxFrequency.Focus(); return; } } } catch (FormatException fe) { MessageBox.Show(this, fe.Message); textBoxTemplateId.Focus(); DialogResult = DialogResult.None; return; } netflow.V9Template template = new netflow.V9Template(id); template.SendFrequency = frequency; foreach (string item in listBoxSelected.Items) { ushort type = 0; ushort length; int i = listBoxAll.FindString(item); if (i != -1) { type = (ushort)(i + 1); } length = TemplateItemSize[type - 1, 1]; template.AddField(type, length); } parent.TemplateList.Add(template); DialogResult = DialogResult.OK; }