2017-11-08 19 views
0

WPF/XAMLから始めるだけです。 Visual Studio 2015 Professionalで小さなアプリを持っています。アプリにいくつかのアイコンボタンを追加する必要があります。 MaterialIconsというNuGetパッケージがインストールされています。パッケージを使用する方法についてのみドキュメントがこの例であるWPF/XAMLでNugetパッケージのアイコンを使用する方法は?

<mi:MaterialIcon Icon="ic_search"/> 

しかし、私は私のXAMLコードに、私は次のコンパイラエラーを取得することを追加するとき:

The namespace prefix "mi" is not defined. 

MaterialIcon is not supported in a Windows Presentation Foundation (WPF) project. 

The type 'mi:MaterialIcon' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built. 

私のXAML:

<Button x:Name="button" Grid.Column="5" HorizontalAlignment="Left" Margin="10,10,10,10" VerticalAlignment="Top" Width="75" 
         Click="OnSettingsMenuItemClick"> 
        <mi:MaterialIcon Icon="ic_search"/></Button> 

コードから<mi:MaterialIcon Icon="ic_search"/>を削除すると、アプリは正常にコンパイルされます。

私はMaterialIconsプロジェクトの中のエントリreferencesを参照してください。 namespace問題を解決する方法がわかりません。

+0

ありすべきもこの例では 'xmlns:mi = ...'のようなXAML名前空間宣言になります。あなたもそれも必要になります。そして、あなたはもちろん、あなたが好きなものにmiという名前を変えることができます。 – Clemens

答えて

0

次の名前空間宣言を追加:あなたは親要素に追加することができますいずれか

xmlns:mi="clr-namespace:MaterialIcons;assembly=MaterialIcons" 

を:Button要素へ

<Window ... xmlns:mi="clr-namespace:MaterialIcons;assembly=MaterialIcons" ... > 

、または直接に:

<Button xmlns:mi="clr-namespace:MaterialIcons;assembly=MaterialIcons" 
     x:Name="button" Grid.Column="5" HorizontalAlignment="Left" Margin="10,10,10,10" 
     VerticalAlignment="Top" Width="75" 
     Click="OnSettingsMenuItemClick"> 
    <mi:MaterialIcon Icon="ic_search"/> 
</Button> 
+0

これは完全に動作し、Visual Studioのエラーを修正します。アイコンは、VSデザイナーウィンドウにうまく表示されます。しかし、私はVSからアプリを実行すると、私はボタンの概要が、そこにアイコンが表示されます。それを修正する方法を知っていますか? – ebhh2001

+1

アイコンが表示されます。他のすべてを削除しようとします。 – mm8

+0

あなたは正しいです。ボタンのサイズとアイコン画像のサイズの間には不一致がありました。ありがとう! – ebhh2001

関連する問題