前提・実現したいこと
自作ツールをWPFで開発しています。
Window.DataContextおよびConverterをXAML内に指定した際に
Could not load file or assembly というエラーが発生します。
このエラーはexe実行時に表示されず、開発中のソフトは見た目上動作しています。
ネットで調べてもどういう意味のエラーかわからず
ソリューションのリビルドをしても消えません。
このエラーを解決する方法を教えていただければと思います。
発生している問題・エラーメッセージ
Could not load file or assembly '[namespace], Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' 指定されたファイルが見つかりません。
該当のソースコード
すべて同じnamespace下にあります。
XAML
1<Window x:Name="___名前_" x:Class="EasyOtoing.MainWindow" 2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 4 xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 5 xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 6 xmlns:lc="clr-namespace:EasyOtoing" 7 mc:Ignorable="d" 8 Title="MainWindow" Height="450" Width="800"> 9 <Window.DataContext> 10 <!--ここにエラー--> 11 <lc:Model/> 12 </Window.DataContext> 13 14 <!--最低限のレイアウト--> 15 16 <DockPanel LastChildFill="True"> 17 <Menu> 18 </Menu> 19 <ToolBar> 20 </ToolBar> 21 <DataGrid> 22 <DataGrid.Resources> 23 <!--ここにエラー--> 24 <lc:PointsConverter x:Key="PointsConverter" /> 25 </DataGrid.Resources> 26 <DataGrid.Columns> 27 <DataGridTextColumn /> 28 </DataGrid.Columns> 29 </DataGrid> 30 </DockPanel> 31 32 33</Window> 34
Window.DataContextに指定したクラス
C#
1namespace EasyOtoing 2{ 3 public class Model : INotifyPropertyChanged 4 { 5 public event PropertyChangedEventHandler PropertyChanged; 6 private void OnPropertyChanged(string propertyName) 7 { 8 this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); 9 } 10 11 //ここにバインド用のdictionaryやリスト型のプロパティを書いてますが省略 12 } 13} 14
Converterのクラス
C#
1namespace EasyOtoing 2{ 3 public class PointsConverter : IValueConverter 4 { 5 /// <summary> 6 /// observablecollectionをpointcollectionに変換 7 /// </summary> 8 /// <param name="value"></param> 9 /// <param name="targetType"></param> 10 /// <param name="parameter"></param> 11 /// <param name="culture"></param> 12 /// <returns></returns> 13 public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 14 { 15 var points = (ObservableCollection<Point>)value; 16 return points != null ? new PointCollection(points) : null; 17 } 18 19 public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) 20 { 21 throw new NotImplementedException(); 22 } 23 } 24} 25
補足情報(FW/ツールのバージョンなど)
VS 2019
WPF C#
別の質問になりそうなので今回の回答としては必要ではありませんが
同じnamespace下で作成したGrid派生のNewGridクラス(lc:NewGridとXAMLで記述)が
「不明な型を作成できません」とXAMLで認識されている問題も起こっており
原因が同じだったりするのかなと考えています。
回答1件
あなたの回答
tips
プレビュー