private void BuildPacketListHeader() { LView_PacketList.BeginUpdate(); { /* 先にデータをすべて削除してからヘッダーを削除する */ LView_PacketList.ItemClear(); LView_PacketList.Columns.Clear(); /* メインヘッダー */ LView_PacketList.Columns.Add( new ColumnHeader() { Text = "No.", Width = 50, } ); /* サブヘッダー */ foreach (var info in prop_.PacketListColumn.Value) { LView_PacketList.Columns.Add( new ColumnHeader() { Text = info.Key.ToString(), Width = info.Value, } ); } } LView_PacketList.EndUpdate(); }
protected override void OnDrawPacketBegin(bool auto_scroll) { /* ちらつき防止用の一時バッファ */ packet_list_temp_ = new List <PacketListViewItem>(); /* リストビューの描画開始 */ LView_PacketList.BeginUpdate(); }
protected override void OnClearPacket() { LView_PacketList.ItemClear(); /* リストビューの最大数を再セットアップ */ LView_PacketList.ItemCountMax = (int)ConfigManager.System.ApplicationCore.Packet_ViewPacketCountLimit.Value; packet_next_no_ = PACKET_NO_MIN; }
protected override void OnDrawPacketEnd(bool auto_scroll, bool next_packet_exist) { /* 一時リストをリストビューに追加 */ LView_PacketList.ItemAddRange(packet_list_temp_); packet_list_temp_ = null; /* 自動スクロール */ if ((auto_scroll) && (LView_PacketList.ItemCount > 0)) { LView_PacketList.EnsureVisible(LView_PacketList.ItemCount - 1); } /* リストビューの描画完了 */ LView_PacketList.EndUpdate(); }
private void LView_PacketList_RetrieveVirtualItem(object sender, RetrieveVirtualItemEventArgs e) { e.Item = PacketListObjectToListViewItem(LView_PacketList.ItemElementAt(e.ItemIndex) as PacketListViewItem); }