2017-05-12 9 views
0

이 내 간단한 (초보자) 이해입니다 : 우리는 Ressource 코드 생성기에 대한 선택의 여지가
: 내부 또는 에게 공개. 기본값은 입니다. 그 선택에 따라 리소스가 내부 또는 공용 접근 자로 만들어 졌음을 이해합니다. 따라서 접근자가 public이면 다음과 같은 것을 사용할 수 있습니다 : Text="{x:Static resx:Resources.SomeLabelID}" ... 내 XAML.
내 질문은/하나 둘 다 :
위의 XAML는 따라서 생성 런타임에 디자인 모드에서 '작동'가 아니라 (더 정확하게 작동하지 않는 경우 내부 접근을 생성 무슨 소용C# 리소스 파일 - XAML에서 내부 리소스에 액세스하는 방법?

  • 초보자를위한 혼란)? 참고 : 단순히 기본 내부 것으로 보인다 특히 이후, 왜, 내가 생각하는 좋은으로 이해하는 것이라고 설명없이 '대중'에 대한 접근을 변경하는 말을 SO에 많은 답변이 있습니다.

- 또는

  • 코드가 내부 접근 생성되면 (XAML에서) 리소스 스트링에 액세스 할 수있는 다른 방법은 거기
  • ?

XAML에 정의

+0

리소스 파일은 wpf에만 해당되는 것이 아니므로 모든 유형의 응용 프로그램에서 사용할 수 있습니다. WPF가 아직 존재하지 않았을 때 사용할 수있었습니다. 동일한 이유로 클래스는 기본적으로 내부 클래스이며 내부 클래스는 기본값이거나 메서드 및 필드는 기본적으로 비공개입니다. – Evk

답변

1

모든 것이 internal 액세스 한정자를 사용하여 감사합니다. 즉, WPF 프레임 워크의 디자인이므로 다른 어셈블리에서 로컬로 정의 된 컨트롤에 액세스 할 수 없습니다.

일반적으로 "정적"컨트롤 (예 : Label)에 strings을 사용하려는 경우 변경 액세스 수정자를 사용하여 간단히 이동할 수 있습니다.

+0

"* 일반적으로 * 당신이 문자열을 사용하려는 경우"정적 "그럼 당신은 단순히 가서 [* 공개 *에 * 개인 *에서] 액세스 수식을 변경할 수 있습니다 컨트롤 (즉, 레이블)." ... 정확히 내가 찾던 답입니다. –