2016-11-15 3 views
1

Ich habe eine Klasse wie diese und ich kann nicht ändern und muss es nur verwenden. Diese Klasse definiert eine Implizit typisierte Array eine solche Liste, die in jeder Zeile wir einen Index und eine Daten (als Produzent sagt):Wie kann ich diese implizit typisierte Array-Klasse verwenden

public partial class LightPenMeta { 

    private long lightPenIDField; 

    private byte[] lightPenDataField; 

    /// <remarks/> 
    public long LightPenID { 
     get { 
      return this.lightPenIDField; 
     } 
     set { 
      this.lightPenIDField = value; 
     } 
    } 

    /// <remarks/> 
    [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")] 
    public byte[] LightPenData { 
     get { 
      return this.lightPenDataField; 
     } 
     set { 
      this.lightPenDataField = value; 
     } 
    } 
} 

mein Problem ist, ich habe es zu benutzen und ein Array-Typ von LightPenMeta definieren [], die zum Beispiel enthält LightPenID = 0, LightPenData = '' in Zeile 0.

dieser Code null Ausnahme zurückgibt:

var lp = new LightPenMeta[1]; 

     lp[0].LightPenData = Data; 
     lp[0].LightPenID = 0; 

die Frage ist, wie kann ich diese Klasse verwenden, und füllen es ist Zeile?

+0

initialisieren das Element zuerst, wie lp [0] initialisieren = new LightPenMeta() – Martheen

Antwort

0

Sie haben das erste Element in Ihrem Array

LightPenMeta[] lp = new LightPenMeta[1]; //instantiate your array 
lp[0] = new LightPenMeta(); //initialize the first element here 
lp[0].LightPenData = Data; 
lp[0].LightPenID = 0; 

In einer Zeile

LightPenMeta[] lp = new LightPenMeta[1]; 
lp[0] = new LightPenMeta() { LightPenData = Data, LightPenID = 0 }; 
+0

Groß antwort, danke. – Kian

Verwandte Themen