2012-01-11 21 views
0

下面的代碼包含了一大堆錯誤消息,而且我不能爲我的生活找出原因。我最近不得不從VS2010「降級」到VS2008,從此以後一直沒有什麼不幸。前幾個錯誤消息顯示爲發生位置旁邊的註釋。簡單的C#WPF窗體生成一堆看似毫無意義的錯誤消息

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Windows; 
using System.Windows.Controls; 
using System.Windows.Data; 
using System.Windows.Documents; 
using System.Windows.Input; 
using System.Windows.Media; 
using System.Windows.Media.Imaging; 
using System.Windows.Navigation; 
using System.Windows.Shapes; 
using System.IO; 

namespace UniClient_NextGen 
{ 
    /// <summary> 
    /// Interaction logic for Window1.xaml 
    /// </summary> 
    public partial class Window1 : Window 
    { 
     public Window1() 
     { 
      InitializeComponent(); 
     } 

     private void buttonPopMenuItemsLU_Click(object sender, RoutedEventArgs e) 
     { // err msg #1 = "} expected" 
      public static int TOPLEVEL_ID = 0; 
      public static int PARENT_ID = 1; 
      public static int SELF_ID = 2; 
      public static int MENU_CAPTION = 3; 
      public static int MENU_NAME = 4; 

      string fileName = @"C:\_UniClientNextGen\MenuItemsWithIDs.txt"; 
      using (StreamReader reader = File.OpenText(fileName)) // err msg #2 = "Invalid token 'using' in class, struct, or interface member declaration" + err msg #3 = "; expected" (at end of this line) 
      { 
       string _line = null; 
       string[] strElements; 
       do 
       { 
        _line = reader.ReadLine(); 
        strElements = _line.Split(","); 
        // strElements should now have five elements 
        int iTopLevelID = Convert.ToInt32(strElements[TOPLEVEL_ID]); 
        int iParentID = Convert.ToInt32(strElements[PARENT_ID]); 
        int iOwnID = Convert.ToInt32(strElements[SELF_ID]); 
        string sMenuCaption = strElements[MENU_CAPTION]; 
        string sMenuName = strElements[MENU_NAME]; 
        //performSQL("INSERT INTO MENU_ITEMS_LOOKUP (TopLevelMenuID, ParentMenuID, MenuItemName, MenuItemCaption) VALUES (iTopLevelID, iParentID, iOwnID, sMenuCaption, sMenuName)"); 
       } while (_line != null); 
      } 
     } // err msg #4 = "Type or namespace definition, or end-of-file expected" 

     private void buttonPopSorterTypesLU_Click(object sender, RoutedEventArgs e) 
     { 
      // 
     } 

     private void buttonPopTabsheetsLU_Click(object sender, RoutedEventArgs e) 
     { 
      // 
     } 

     private void buttonPopMenuItem_SorterTypeM2M_Click(object sender, RoutedEventArgs e) 
     { 
      // 
     } 

     private void buttonPopSorterType_TabsheetM2M_Click(object sender, RoutedEventArgs e) 
     { 
      // 
     } 
    } 
} 
+0

什麼.NET版本,當你在VS2010有它的項目中,那之前是什麼,現在是什麼? – kettch 2012-01-11 17:23:00

+0

這是一個全新的項目,創建於VS2008,.NET 3.5 SP1 – 2012-01-11 17:46:57

回答

1

下面是更正後的代碼(我在正確的地方移動靜態成員聲明並糾正了_line.Splt()參數):

//... 
public static int TOPLEVEL_ID = 0; 
public static int PARENT_ID = 1; 
public static int SELF_ID = 2; 
public static int MENU_CAPTION = 3; 
public static int MENU_NAME = 4; 

void buttonPopMenuItemsLU_Click(object sender, RoutedEventArgs e) { 
    string fileName = @"C:\_UniClientNextGen\MenuItemsWithIDs.txt"; 
    using(StreamReader reader = File.OpenText(fileName)) { 
     string _line = null; 
     string[] strElements; 
     do { 
      _line = reader.ReadLine(); 
      strElements = _line.Split(','); 
      int iTopLevelID = Convert.ToInt32(strElements[TOPLEVEL_ID]); 
      int iParentID = Convert.ToInt32(strElements[PARENT_ID]); 
      int iOwnID = Convert.ToInt32(strElements[SELF_ID]); 
      string sMenuCaption = strElements[MENU_CAPTION]; 
      string sMenuName = strElements[MENU_NAME]; 
     } while(_line != null); 
    } 
} 
//... 
+0

完全錯誤的靜態和錯誤的引用字符引起所有的混亂! – 2012-01-11 17:56:53

3

爲什麼在一個方法中有public static聲明?

1

我認爲你是XAML定義或XAML命名空間不與你的類同步。你最近重新命名了一個類或命名空間嗎?

+0

不;它是: 2012-01-11 17:49:42