private void UpdatePacketDetails(PacketListViewItem obj)
        {
            TreeNode BuildTreeNode(ProtocolParseInfo.InformationObject info)
            {
                var node = new TreeNode(info.Text);

                foreach (var info_sub in info.SubItems)
                {
                    node.Nodes.Add(BuildTreeNode(info_sub));
                }

                return(node);
            }

            TView_PacketDetails.BeginUpdate();
            {
                TView_PacketDetails.Nodes.Clear();

                var node = new TreeNode();

                if ((obj.ParsePacketInfo != null) && (obj.ParsePacketInfo.PacketInfo != null))
                {
                    foreach (var info in obj.ParsePacketInfo.PacketInfo.SubItems)
                    {
                        TView_PacketDetails.Nodes.Add(BuildTreeNode(info));
                    }
                }
                else
                {
                    node.Text = "Unknown";
                }
            }
            TView_PacketDetails.EndUpdate();
        }
        private string GetMessagePacketObjectText(PacketListColumnID column_id, PacketListViewItem obj)
        {
            switch (column_id)
            {
            case PacketListColumnID.PacketInformation:      return(obj.BasePacket.Message);

            default:                                                                        return("");
            }
        }
        private string GetDataPacketObjectText_PacketInformation(PacketListViewItem item)
        {
            if (item.ParsePacketInfo == null)
            {
                return("Unknown");
            }

            return(item.ParsePacketInfo.PacketInfo.Text);
        }
        private string GetPacketObjectText(PacketListColumnID column_id, PacketListViewItem obj)
        {
            switch (obj.BasePacket.Attribute)
            {
            case PacketAttribute.Message:   return(GetMessagePacketObjectText(column_id, obj));

            case PacketAttribute.Data:              return(GetDataPacketObjectText(column_id, obj));

            default:                                                return("");
            }
        }
        private ListViewItem PacketListObjectToListViewItem(PacketListViewItem obj)
        {
            /* 未解析の場合のみ解析 */
            if ((!obj.IsParsedPacket) && (parser_ != null))
            {
                obj.ParsePacketInfo = parser_.ParsePacket(obj.BasePacket);
                obj.IsParsedPacket  = true;
            }

            var item = new ListViewItem(obj.No.ToString());

            item.Tag = obj;

            foreach (var info in prop_.PacketListColumn.Value)
            {
                switch (info.Key)
                {
                case PacketListColumnID.Alias:
                    item.SubItems.Add(obj.BasePacket.Alias);
                    break;

                case PacketListColumnID.Datetime_UTC:
                    item.SubItems.Add(obj.BasePacket.GetElementText(PacketElementID.DateTime_UTC_Display));
                    break;

                case PacketListColumnID.Datetime_Local:
                    item.SubItems.Add(obj.BasePacket.GetElementText(PacketElementID.DateTime_Local_Display));
                    break;

                case PacketListColumnID.PacketLength:
                    item.SubItems.Add(obj.BasePacket.DataLength.ToString());
                    break;

                default:
                    item.SubItems.Add(GetPacketObjectText(info.Key, obj));
                    break;
                }
            }

            return(item);
        }
        private string GetDataPacketObjectText(PacketListColumnID column_id, PacketListViewItem obj)
        {
            switch (column_id)
            {
            case PacketListColumnID.Alias:                          return(obj.BasePacket.Alias);

            case PacketListColumnID.Datetime_UTC:           return(obj.BasePacket.GetElementText(PacketElementID.DateTime_UTC_Display));

            case PacketListColumnID.Datetime_Local:         return(obj.BasePacket.GetElementText(PacketElementID.DateTime_Local_Display));

            case PacketListColumnID.Source:                         return(GetDataPacketObjectText_Source(obj));

            case PacketListColumnID.Destination:            return(GetDataPacketObjectText_Destination(obj));

            case PacketListColumnID.PacketLength:           return(obj.BasePacket.DataLength.ToString());

            case PacketListColumnID.PacketInformation:      return(GetDataPacketObjectText_PacketInformation(obj));

            default:                                                                        return("");
            }
        }
 private string GetDataPacketObjectText_Destination(PacketListViewItem item)
 {
     return("");
 }
 private string GetDataPacketObjectText_Source(PacketListViewItem item)
 {
     return("");
 }