色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 學(xué)習(xí)LabVIEW(二)——操作.NET泛型類

          學(xué)習(xí)LabVIEW(二)——操作.NET泛型類

          作者: 時間:2017-01-09 來源:網(wǎng)絡(luò) 收藏

          首先調(diào)用Dictionary的Add方法,往里面添加一個Key-Value對。根據(jù)Dictionary這個類型,Add方法的參數(shù)為一個字符串和一個整數(shù)。和前面調(diào)用MakeGenericType一樣,我們還是用LabVIEW自帶的數(shù)組來構(gòu)造Invoke所需要的Object[]。糟糕的一點在于,LabVIEW沒法自動把自身的字符串和整數(shù)類型轉(zhuǎn)換成.NET的System.Object,我們需要借助dotnet.llb這個庫,可以在LabVIEW的安裝目錄中找到,比如,我的機器上是這個路徑:
          .../LabVIEW2013/vi.lib/Platform/dotnet.llb
          在當前的程序中點右鍵,在彈出的菜單中點擊“選擇vi“,會彈出一個打開文件對話框,用這個對話框打開上面說到的dotnet.llb,如下圖所示:


          選擇之后,會彈出另外一個對話框,選中“To .NET Object.vi”即可,如下圖所示。


          最后用如下的方法成功調(diào)用了Dictionary的Add方法:


          上面的程序中,我們插入的Key-Value對為
          "eleven" : 11
          接下來,我們用Dictionary的TryGetValue方法獲取Key "eleven"對應(yīng)的Value。TryGetValue的返回值為bool型,表示查詢是否成功,第一個參數(shù)為Key,第二個參數(shù)為傳出參數(shù),為查詢得到的Value。和剛才一樣,通過GetMethod和Invoke來調(diào)用TryGetValue,構(gòu)造Object[]作為參數(shù)列表。需要注意的是,Object[]的第二個參數(shù)需要和Value的類型保持一致,否則會報錯。程序如下:

          程序中用了兩個文本框輸出TryGetValue的返回值和傳出參數(shù)。查詢時用的Key是字符串"eleven",第二個參數(shù)5是隨便寫的,只要是和Value類型相同即可。所以得到下面的運行結(jié)果也在意料之中:


          經(jīng)過了上面這一番實驗,原本認為在LabVIEW中利用Reflection就可以輕易操縱泛型的我,還是默默啟動了Visual Studio,寫起了C#代碼。

          上一頁 1 2 下一頁

          關(guān)鍵詞: LabVIEWNET泛型

          評論


          技術(shù)專區(qū)

          關(guān)閉