2017-06-14 19 views
-1

我目前正在使用Mahapps.Metro iconpacks和VB.NET(不是我的選擇)在WPF中構建應用程序啓動器。應用程序列表來自數據庫,並在用戶連接時進行檢索。這些按鈕是通過這種方法建立:WPF VB.NET如何instanciate包圖標

Imports MahApps.Metro.IconPacks 
For Each app As UserDLL.BO.UserApplication In _user.applications 
    Dim btn As New MyApplicationButton(app.ApplicationName, app.ApplicationPath, app.ApplicationArgs, app.ApplicationIcon) 
    btn.Content = app.ApplicationName 
    btn.Style = _style 
    Dim packIconMaterial As PackIconModern() 
    AddHandler btn.Click, AddressOf launchApp 
    Apps.Children.Add(btn) 
Next 

但我對Dim packIconMaterial As PackIconModern()一個錯誤,它說PackIconModern is ambiguous in the namespace 'Mahapps.Metro.IconPacks'

我缺少什麼?

+1

您是否知道'PackIconModern'的[完全限定名稱](https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/namespaces/using-namespaces)?使用完全合格的名稱來消除歧義。 – kennyzx

+0

智能感知讓我將Mahapps.Metro.Iconspack作爲包含不同圖標包的名稱空間。我一直在挖 – Dams

+0

我發現這在stackoverflow,但它是在C#中,並沒有關於使用命名空間的解釋 [鏈接](https://stackoverflow.com/questions/41117096/assign-mahapps-metroiconpacks-to-button-in-code - 背後) – Dams

回答

0

想象一下發生了什麼!

我在我的項目中安裝了太多的Mahapps.Metro軟件包。 所以我在我的參考文獻:

Mahapps.Metro 
Mahapps.Metro.iconsPack 
Mahapps.Metro.IconsPack.SimpleIcons 
Mahapps.Metro.IconsPack.SomeOtherIconsPacks 

一旦我刪除了Mahapps.MetroMahapps.Metro.iconsPack,錯誤消失。

謝謝大家的幫助!