Gibbed.RED.FileFormats.Game.GenericObject.GetDataType C# (CSharp) Method

GetDataType() public method

public GetDataType ( string name ) : string
name string
return string
        public string GetDataType(string name)
        {
            return _propertyValues[name].Type;
        }

Usage Example

示例#1
0
        public void LoadResource(GenericObject data)
        {
            Text = data.Type;
            listView1.BeginUpdate();
            try
            {
                foreach (string name in data.PropertyValues)
                {
                    var item = new ListViewItem(name);
                    var dataType = data.GetDataType(name);
                    item.SubItems.Add(dataType);
                    var isArray = dataType.StartsWith("@") && !dataType.StartsWith("@*");
                    item.SubItems.Add(isArray ? "" : data.GetPropertyValueAsString(name, _explorer.StringsFile));
                    listView1.Items.Add(item);

                    if (isArray)
                    {
                        var items = (List<object>) data.GetPropertyValue(name);
                        for(int i=0; i<items.Count; i++)
                        {
                            var childItem = new ListViewItem("[" + i + "]");
                            childItem.SubItems.Add(dataType.Substring(1));
                            childItem.SubItems.Add(items[i].ToString());
                            childItem.IndentCount = 1;
                            listView1.Items.Add(childItem);
                        }
                    }
                }
                if (data.UndecodedData != null)
                {
                    var item = new ListViewItem("<undecoded data>");
                    item.SubItems.Add("byte[]");
                    item.SubItems.Add(data.UndecodedData.Length + " bytes");
                    listView1.Items.Add(item);
                }
            }
            finally
            {
                listView1.EndUpdate();
            }
        }