2013-01-08 21 views
0

可能重複:
C# loading a XML file從XML文件應用性能,形成

我得到了我的程序有問題。我需要閱讀一些XML文件,其中我有表單屬性,我需要運行(加載)它應用於我的程序。我得到了這個代碼,但是在運行時它給了我一個錯誤(對象引用未設置爲對象的實例)。我現在迷了路,真的不知道如何將這些設置從xml應用到我的程序中。

<Form> 
    <Size> 
    <Width>558</Width> 
    <Height>537</Height> 
    </Size> 
    <Text>XML saving</Text> 
    <Name>Test_name</Name> 
</Form> 
public formaENA() 
    { 
     InitializeComponent(); 
    } 

    private void Form1_Load(object sender, EventArgs e) 
    { 
     XDocument newDoc = XDocument.Load(@"C:\testXML.xml"); 

     var form = from size in newDoc.Descendants("Size") 
        select new 
        { 
         Width = Convert.ToInt32(size.Element("Width").Value), 
         Height = Convert.ToInt32(size.Element("Height").Value)   
        }; 

     foreach(var size in form) 
     { 
      formaENA.ActiveForm.Width = size.Width; 
      formaENA.ActiveForm.Height = size.Height;    
     } 
+1

哪行引發異常? – daryal

+0

formaENA.ActiveForm.Width = size.Width;這裏 –

+0

可能是'formaENA.ActiveForm'爲空。 –

回答

0

在我看來,你還沒有初始化formaENA。如果它沒有名爲ActiveForm的靜態屬性,你應該得到一個空指針異常。

1

那麼你收到此錯誤,因爲你沒有初始化formaENA。 嘗試創建該表單之前,您將任何屬性分配給它。

formaENA frm = new formaENA(); 
    foreach(var size in form) 
    { 
     frm.Width = size.Width; 
     frm.Height = size.Height;    
    } 
    frm.Show();