/// <summary> /// Called when the list view wants the columns for a CIDR address. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void listView_FetchRecordContent(object sender, ListContentEventArgs e) { Cidr cidr = null; var cidrText = e.Record as string; if (!String.IsNullOrEmpty(cidrText)) { Cidr.TryParse(cidrText, out cidr); } e.ColumnTexts.Add(cidrText); e.ColumnTexts.Add(cidr == null ? "" : cidr.FirstMatchingAddress.ToString()); e.ColumnTexts.Add(cidr == null ? "" : cidr.LastMatchingAddress.ToString()); }
/// <summary> /// Refreshes the content of the list view item. The list view item need not be contained /// within the list view itself, it can be detached. /// </summary> /// <param name="listViewItem"></param> protected virtual void RefreshListViewItem(ListViewItem listViewItem) { var recordContent = new ListContentEventArgs(listViewItem.Tag); OnFetchRecordContent(recordContent); if (CheckBoxes) { FillAndCheckListViewItem <object>(listViewItem, r => recordContent.ColumnTexts.ToArray(), r => recordContent.Checked); } else { FillListViewItem <object>(listViewItem, r => recordContent.ColumnTexts.ToArray()); } }
/// <summary> /// Raises <see cref="FetchRecordContent"/>. /// </summary> /// <param name="args"></param> protected virtual void OnFetchRecordContent(ListContentEventArgs args) { EventHelper.Raise(FetchRecordContent, this, args); }