デザイナーに表示されないエラーが発生しました。ただし、ビルドにエラーはなく、プログラムは問題なく正常に実行されます。
私はしようとしました:
クリーンアップおよび再構築更新Visual Studio修復Visual Studio再起動PC
何も役に立たない...私はそれを解決するために私がこれ以上何ができるかわからない...
私はここで確認する必要がありますが、ビジュアルスタジオを再起動した後でも機能しません。ソリューションを再構築してください 名前<...>は名前空間clr-namespace <...>に存在しません
これはXamlファイルです:
<Window x:Class="PulserTester.windows.ConfigPage"
xmlns="http://schemas.Microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.Microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.Microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:PulserTester.windows"
xmlns:Convertors="clr-namespace:PulserTester.Convertors"
mc:Ignorable="d"
d:DesignHeight="575.068" Width="500">
<Window.Resources>
<Convertors:NumericTextBoxConvertor x:Key="NumericTextBoxConvertor" />
</Window.Resources>
<Grid Background="White">
<StackPanel>
<StackPanel Margin="5">
<TextBlock HorizontalAlignment="Right">שם הפולסר</TextBlock>
<TextBox HorizontalAlignment="Right" MinWidth="100" Text="{Binding PulserName,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"></TextBox>
</StackPanel>
<StackPanel Margin="5">
<TextBlock HorizontalAlignment="Right">האם להציג הודעה במצב של כישלון</TextBlock>
<CheckBox HorizontalAlignment="Right" IsChecked="{Binding FailQuestion,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"></CheckBox>
</StackPanel>
<StackPanel Margin="5">
<TextBlock HorizontalAlignment="Right">האם לאפשר בדיקת כיול</TextBlock>
<CheckBox HorizontalAlignment="Right" IsChecked="{Binding CalibrationOption,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"></CheckBox>
</StackPanel>
<StackPanel Margin="5">
<TextBlock HorizontalAlignment="Right">סגנון הבדיקה</TextBlock>
<ComboBox HorizontalAlignment="Right" Width="213"
ItemsSource="{Binding CheckStyles.Keys}"
SelectedItem="{Binding CheckStyleSelected,UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
></ComboBox>
</StackPanel>
<StackPanel Margin="5">
<TextBlock HorizontalAlignment="Right">מספר המפעל</TextBlock>
<ComboBox HorizontalAlignment="Right" Width="213"
ItemsSource="{Binding FactoriesNumbers}"
SelectedItem="{Binding FactorySelected,UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
></ComboBox>
</StackPanel>
<StackPanel Margin="5">
<TextBlock HorizontalAlignment="Right">תדירות השמירה בבידקות</TextBlock>
<TextBox HorizontalAlignment="Right" MinWidth="100" Text="{Binding SaveBatteryFreq,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged, Converter={StaticResource NumericTextBoxConvertor}}"></TextBox>
</StackPanel>
<StackPanel Margin="5">
<TextBlock HorizontalAlignment="Right">לאפשר גבולות סטטסיטיים</TextBlock>
<CheckBox HorizontalAlignment="Right" IsChecked="{Binding AllowUsingStatistic, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"></CheckBox>
</StackPanel>
<StackPanel Margin="5">
<TextBlock HorizontalAlignment="Right">מספר התאים לתחילת הסטטסיטיקה</TextBlock>
<TextBox HorizontalAlignment="Right" MinWidth="100" Text="{Binding NumberOfCellToStartTheStatistics,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged, Converter={ StaticResource NumericTextBoxConvertor}}"></TextBox>
</StackPanel>
<StackPanel Margin="5">
<TextBlock HorizontalAlignment="Right">מספר התאים להתחול הסטטיסטיקה מחדש</TextBlock>
<TextBox HorizontalAlignment="Right" MinWidth="100" Text="{Binding NumberOfCellToRestartTheStatistics,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged, Converter={ StaticResource NumericTextBoxConvertor}}"></TextBox>
</StackPanel>
<StackPanel Margin="5">
<Button Command="{Binding Path=SaveCommand}">bb</Button>
</StackPanel>
</StackPanel>
</Grid>
</Window>
これは私のコンバーターです:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Data;
namespace PulserTester.Convertors
{
public class NumericTextBoxConvertor : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return value.ToString();
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
string val = value.ToString();
long ret = long.TryParse(new string(val.Where(char.IsDigit).ToArray()), out long result) ? result : 0;
if (ret > int.MaxValue)
{
ret = int.MaxValue;
}
return ret;
}
}
}
上記のコメントに埋め込んだ@Bradley Uffner
について述べた解決策をもう一度繰り返します。
.VS
フォルダを削除しますこれは非常に一般的なエラーであり、複数の原因と解決策があるため、うまくいかない場合がありますが、過去に何度かうまくいったことがわかっているので、一見の価値があります。
別のフレームワークバージョンに切り替えてから、自分のバージョンに戻すことができます。私の場合は、VS 16.4を使用しています。フレームワーク4.6.2から4.7.2に変更してから、4.6.2に切り替えます。
この単純なアクションで、プロジェクトのXDG0008とXDG0012が解決されます。
次のように、名前空間参照に実際のアセンブリ名を追加することで、過去にこの問題が発生した場合は、それを取り除くことができました。
xmlns:windowManager="clr-namespace:PulserTester.Convertors;Assembly=TheNameOfTheAssemblyWithoutExtension"
これは過去に私のために働いていました。
同じ問題が発生しました。コントロールを含むプロジェクトがソリューション(.slnファイル)に含まれていないことがわかりました。ソリューションにプロジェクトを追加するだけで問題が解決します。