2014-07-08 12 views
-1

안녕하세요 (이 제품은 내 첫 번째 게시물입니다.) 나는이 문제로 얼마 동안 고민하고 있으며 샘플 및 자습서를보고 있으며 여전히 손실. 나는 WPF 세계에 발을 들여 놓으려고 노력 중이며 단지 표면만을 긁어 모으기 때문에 초간단 한 예가된다. 나는 몇몇 사람들을 여기에서 읽었는데, 같은 질문을한다.하지만 나는 내 문제에서 똑같은 문제를 보지 않는다. 벌써 물어 본 것에 대해 사과드립니다. 내가 다음 3을보고하고WPF 네임 스페이스 태그 xxx는 XML 네임 스페이스에 존재하지 않습니다.

<Window x:Class="WpfSample.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:l="clr-namespace:WpfSample" 
    Title="MainWindow" Height="350" Width="525"> 
    <Window.Resources> 
    <l:BooleanToVisibilityConverter x:Key="converter" /> 
    </Window.Resources> 

    <Grid> 
     <TextBox x:Name="txtName" HorizontalAlignment="Left" Height="23" Margin="112,37,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/> 
     <Label x:Name="lblLabel" Content="{Binding Text, ElementName=txtName,UpdateSourceTrigger=PropertyChanged}" 
      Visibility="{Binding IsChecked,ElementName=chkShowLabel, Converter={StaticResource boolToVis}}" 
      HorizontalAlignment="Left" Margin="256,37,0,0" VerticalAlignment="Top"/> 
     <CheckBox x:Name="chkShowLabel" Content="Show Label" HorizontalAlignment="Left" Margin="112,65,0,0" VerticalAlignment="Top"/> 

    </Grid> 
</Window> 

: 같은

Namespace WpfSample 

Class MainWindow 
    Public Sub New() 

     ' This call is required by the designer. 
     InitializeComponent() 

     ' Add any initialization after the InitializeComponent() call. 

    End Sub 
End Class 



Public Class BooleanToVisibilityConverter 
    Implements IValueConverter 
    Public Sub New() 

    End Sub 

    Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As Globalization.CultureInfo) As Object Implements IValueConverter.Convert 
     If value.Equals(True) Then 
      Return System.Windows.Visibility.Visible 
     Else 
      Return System.Windows.Visibility.Collapsed 
     End If 
    End Function 

    Public Function ConvertBack(value As Object, targetType As Type, parameter As Object, culture As Globalization.CultureInfo) As Object Implements IValueConverter.ConvertBack 
     If value.Equals(System.Windows.Visibility.Visible) Then 
      Return True 
     Else 
      Return False 
     End If 
    End Function 
End Class 
End Namespace 

다음 내 XAML 보이는 :

내가 VB에서 다음 한 모든 입력

을 위해 사전에 너무 감사 오류 "BooleanToVisibilityConverter"이름이 네임 스페이스 "clr-namespace : WpfSample"에 존재하지 않습니다.

'l : BooleanToVisibilityConverter'유형을 찾을 수 없습니다. 어셈블리 참조가 누락되지 않았는지, 참조 된 모든 어셈블리가 빌드되었는지 확인하십시오.

'BooleanToVisibilityConverter'태그는 XML 네임 스페이스 'clr-namespace : WpfSample'에 존재하지 않습니다.

답변

0

샘플에서 변환기 사용을 제거하고 먼저 프로젝트를 빌드하십시오. 성공적으로 빌드 된 후에 만 ​​xaml에서 사용할 수 있습니다. 당신은 라벨 태그에 당신이 XAML에서 컨버터의 사용을 제거하여 프로젝트를 빌드 이후 할 수있는

한 가지 더 "를 boolToVis"를 사용하는 동안

또한 Window.resources에서 키 이름은 "계산기"입니다 xmlns : l =을 작성하십시오. 전체 어셈블리 이름이 목록에 나타납니다. 이렇게하면 조립 경로가 잘못 작성되는 것을 방지 할 수 있습니다.

+0

제안 된대로 변환기를 제거하지 않아도됩니다 ... 전체 어셈블리 경로를 제공하는 것만으로 효과가있는 것처럼 보였습니다. 어리석은 질문에 고마워하고 미안합니다. – user3814606

관련 문제