2013-10-27 59 views
0

我會從我的XML文件中讀取numericUpDown1.Value,但它不起作用。從XML中讀取字符串;無法設置NumericUpDown.Value

我用numericUpDown1.Value = reader.Value;這給出了一個錯誤

有什麼不對?

   XmlTextReader reader = new XmlTextReader("Config.xml"); 
       XmlNodeType type; 

       while (reader.Read()) 
       { 
        type = reader.NodeType; 

        if (type == XmlNodeType.Element) 
        { 
         if (reader.Name == "WindowsHost") 
         { 
          reader.Read(); 
          textBox1.Text = reader.Value; 
         } 
        } 
        if (type == XmlNodeType.Element) 
        { 
         if (reader.Name == "WindowsPort") 
         { 
          reader.Read(); 
          numericUpDown1.Value = reader.Value; //Error 
         } 
        } 
       } 

       reader.Close(); 
+1

什麼是錯誤?請具體說明,這不是「代碼不工作,請修復」網站。 – Cyral

+0

我無法理解這個問題。你在讀什麼?從哪個XML?在你的情況下,「不起作用」是什麼意思?什麼是錯誤? – millimoose

回答

1

reader.Valuestring,不是int,這是你必須在string to a valid number轉換之前,你可以設置它的numericUpDown1.Value

類型。

if (reader.Name == "WindowsPort") 
{ 
    int i = -1; 
    if (Int32.TryParse(reader.Value, out i)) 
    { 
     numericUpDown1.Value = i; 
    } 
    else 
    { 
     //Unexpected Result; Value not a number 
    }  
} 
+0

Thx,這就是我的意思:) – user2920845