2011-03-24 2 views
5

내가 생성자에서 페이지의 이름 속성을 설정하려고 시도하고는 :FrameworkElement.Name 문제

public partial class PageListView : Page 
{ 
    public PageListView(string title) 
    { 
     InitializeComponent(); 
     Name = title; 
    } 
} 

그러나, 나는 자주 다음과 같은 오류 메시지가 나타납니다.

'x' is not a valid value for property 'Name'. 
x 어떤 유용한 정보를 제공하지 않는 것 예외 세부 사항으로 드릴 다운 거의 모든 될 것으로 보인다

은 (예를 들어,의 InnerException가 null입니다.)

사람이 여기에 무슨 일이 일어나고 있는지 알고 있나요?

답변

12

Name 속성은 일반적으로 C#/VB.NET 식별자 (즉, 필드)의 규칙을 따릅니다. documentation을 기반으로 이름 지침 XAML 사양에 의해 정의 : 에 의해 기본 X를 부과로 이름에 사용

문자열 값이 일부 제한이 있습니다. 가장 중요한 점은 이름은 문자 또는 밑줄 문자 (_)으로 시작해야하며 문자, 숫자 또는 밑줄 만 포함해야합니다.

전달할 매개 변수 (예 : 제목)에 따라 위반할 수 있습니다. 그러나 확실한 몇 가지 구체적인 예를 제시해야합니다.

+1

그래, 내가 게시하자마자 깨달았다 :) – ocodo

1

물론이 게시물을 게시 한 순간 나는 무슨 일이 일어 났는지 깨달았습니다.

FrameworkElement.Name은 개체 참조를 만드는 데 사용되므로 개체 인스턴스 변수 이름에 유효한 문자 만 포함되어 있는지 확인해야합니다.

참조 용으로 실제로 x:Name 속성을 설정하지 않는 한 대신 제목 또는 다른 일반 텍스트 속성을 사용하십시오.