2

私の .xaml ページ コード:

<phone:PhoneApplicationPage
    x:Class="MVVM1Test.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
    xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:converter="clr-namespace:MVVM1Test.Resources.Converters"
    mc:Ignorable="d"
    SupportedOrientations="Portrait" Orientation="Portrait"
    shell:SystemTray.IsVisible="True">

    <phone:PhoneApplicationPage.Resources>
        <converter:NotConverter x:Name="not"></converter:NotConverter>
    </phone:PhoneApplicationPage.Resources>

    <!--LayoutRoot is the root grid where all page content is placed-->
    <Grid x:Name="LayoutRoot" Background="Gray">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>
    </Grid>

</phone:PhoneApplicationPage>

notconverter.cs

namespace MVVM1Test.Resources.Converters
{
    public class NotConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            return !(bool)value;
        }

        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            return !(bool)value;
        }
    }
}

それはエラーを示しています

「名前 NotConverter は名前空間 clr-namespace:MVVM1Test.Resources.Converters に存在しません」

しかし、コンバータークラスもソリューションに追加しました。

4

3 に答える 3

0

同様の名前空間の問題がありました。私にとっては、Visual Studio を再起動することで問題が解決したようです。もちろん、IValueConverter クラスで名前空間が正しく定義されていることを確認する必要があります (名前空間 MVVM1Test.Resources.Converters など)。

Visual Studio を保存して再起動します。

于 2014-02-18T05:12:31.380 に答える