2013-10-03 141 views
0

的值,我發現這個網站: How to use a Class from one C# project with another C# project訪問從一個項目在其他

但是,我想訪問類如下。我正在使用命名空間來訪問該值,但不起作用。 項目B

namespace Elettric80.LgvManager 
{ 
    class ConveyorStation : MachineStation 
    { 
     public ConveyorStation(LGVManager lgvManager, string name, uint depth, 
           uint width, uint maxLevels) 
      : base(lgvManager, name, depth, width, maxLevels) 
     { 
     } 
    } 
} 

這是我正在試圖訪問: 項目中

using Elettric80.LgvManager; 

private ConveyorStation conveyorStation; 

txtvalue.text = conveyorStation.value.ToString(); 

謝謝

+2

你是否以某種方式初始化項目A中的現場輸送站? –

回答

3
namespace Elettric80.LgvManager 
{ 
    class ConveyorStation : MachineStation // compiler is assuming you meant internal class 
    { 
     ... 
    } 
} 

你需要做輸送站 '公共' 類。如果沒有指定它,編譯器會假定你的意思是「內部」類,它只允許在同一個程序集中進行訪問。將其更改爲:

namespace Elettric80.LgvManager 
{ 
    public class ConveyorStation : MachineStation 
    { 
     ... 
    } 
} 

並且您的問題應該解決。


更完全;訪問級別的不同級別可以找到here (MSDN - Accessibility Levels).。此問題的相關報價:

不嵌套在其他類型中的頂級類型只能具有內部或公共可訪問性。這些類型的默認可訪問性是內部的。

+0

謝謝你的幫助。有效。 –

0

指定ConveyorStation類的訪問修飾符到public因爲默認訪問修飾符是internal(來自其他組件不可訪問)。

此外,請確保您有項目參考:

右鍵單擊項目引用,並添加引用到具有您要訪問的值項目。 http://i.stack.imgur.com/6l5p4.png

相關問題