2009-08-18 5 views
2

그래서 사용자 정의 컨트롤이 있습니다. 종속성 프로퍼티의 일부에 바인딩하기를 원하기 때문에 x : Name을 지정해야 사용할 수 있습니다.사용자 정의 이름 지정. 협약?

<UserControl x:Class="WpfApplication1.UserControl1" x:Name="UserControl1" 
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> 
    <Grid /> 
</UserControl> 

당신은이 작업을 수행 할 수 없습니다

... ... 멤버 이름들이 둘러싸는 형식과 일치하지 않을 수 있기 때문이다.

그래서 다른 것을 고를 필요가 있습니다.하지만 여기서는 좋은 컨벤션이 무엇입니까? 무언가를 끝까지 붙이세요? "UserControl1UserControl"? "Root"라고 부르시겠습니까? 다른 경우 "userControl1"을 사용 하시겠습니까?

어떤 선택을하셨습니까?

나는 이것이 정말로 사소하다는 것을 알고 있지만, 요소들을 매우 조심스럽게 이름 짓고 일관성을 중요하게 생각한다.

+0

규칙 번호 1과 같이 영어를 사용하는 것이 좋습니다. 나는 농담하지 않는다. 당신이 이해하지 못하는 언어로 된 식별자를 가진 코드를 디버깅하는 것보다 더 재미있는 것은 없다. –

+0

나는 그것이 들썩 들썩 할 것이다라고 상상할 수있다. –

답변

1

그러나 XAML 파일의 이름을 지정합니다.

Foo.xaml는 :

<UserControl x:Name="foo" ... 
0

이러한 이름은 클래스의 필드로 결국, 그래서 난 그냥 표준 필드 명명 규칙을 사용합니다. 루트 수준 컨트롤 인 경우 항상 "_root"라고합니다.

<UserControl x:Name="_root"> 
    <StackPanel> 
     <TextBox x:Name="_nameTextBox"/> 
     <TextBox x:Name="_ageTextBox"/> 
    </StackPanel> 
</UserControl> 
+0

지금까지 "루트"를 선호합니다 ... –

+0

사용자 컨트롤의 루트 또는 XAML 트리의 루트를위한 것입니까? 당신이 의미하는 바를 알지만, 다음 사람은 그렇지 않습니다. 모든 것이 "_root"라고 명명하는 것이 합리적일까요? –

+0

@ 브라이언 : 다음 사람이 코드를 읽을 수 있기를 바랍니다. 나는 당신의 국제 대회와 비슷한 주장을 할 수 있습니다. –

0

설명 : 일관성있게

즉, 무언가를 골라 붙어 있습니다.

관련 문제