Programing

StaticExtension 값을 확인할 수 없습니다.

즐거운 cyworld 2021. 1. 11. 07:30
반응형

StaticExtension 값을 확인할 수 없습니다.


정적 속성에 대한 WPF 바인딩에 몇 가지 문제가 있습니다. 내 응용 프로그램에는 ThisAddIn에 대한 정적 속성을 포함하는 Globals 라는 클래스 가 있습니다 . 이 개체를 사용하면 기본적으로 Binding에서 사용하려는 User 속성에 액세스 할 수 있습니다. 따라서 내 XAML은 다음과 같습니다.

<TextBlock Text="{Binding Path=User.Name
                   , Source={x:Static Member=s:Globals.ThisAddIn}}" />

네임 스페이스 s 는 다음 줄에 의해 맨 위에 선언됩니다.

xmlns:s="clr-namespace:ConsoleApplication16.Model"

XAML에서 정적 속성을 참조하는 방법에 대한 다양한 접근 방식을 찾았지만이 방법을 제외하고는 어느 것도 작동하지 않았습니다. 이것은 나에게도 가장 논리적으로 보입니다. 내가 찾은 일부 샘플은 Path 또는 Member를 전혀 사용하지 않았습니다.

몇 가지 테스트를 마친 후 올바른 방법을 찾았습니다. "x : Static Member"를 사용하여 사용할 클래스와 정적 속성을 정의하고 Path는 일반 바인딩과 마찬가지로이 개체 내부의 올바른 속성을 정의합니다. .

이 솔루션은 아무런 불평없이 컴파일되지만 XAMLParseException이 팝업되어 StaticExtension 값을 열거 형, 정적 필드 또는 정적 속성으로 확인할 수 없음 을 직접 알려줍니다 .


Globals.ThisAddIn공개되어 있는지 확인 하세요.

리소스 파일을 사용하는 경우에도 액세스 수정자가 다음으로 설정되어 있는지 확인해야하는 경우에도이를 얻을 수 있습니다 Public.

여기에 이미지 설명 입력


출력 라이브러리 프로젝트에서 Resources.resx 파일의 생성기가 기본적으로 ResXFileGodeGenerator 대신 PublicResXFileCodeGenerator로 수정되었는지 확인해야합니다.

다음으로 바꾸기 ...

공개 자원이 아님

이 하나

올바른 공공 자원

참조 URL : https://stackoverflow.com/questions/9773610/staticextension-value-cannot-be-resolved

반응형