2017-11-06 1 views
0

내 xaml에 텍스트 상자가 있습니다 ->x:Name="textBoxId". 코드 뒤에 나는 OnRoutedEvent(object sender, RoutedEventArgs e) 메소드를 사용했다. WPF/C#에서 이름 비교는 무엇을 의미합니까?

source == textBoxId

어떻게 대신 객체 비교의 이름 비교를 사용할 수 있습니다

또한 다음과 같은 사용했다?

이름 비교 란 무엇을 의미합니까?

+0

_ "개체 비교 대신 이름 비교를 어떻게 사용할 수 있습니까?"- _ 이유는 무엇입니까? 현재 사용중인 참조 평등 비교가 더 효율적입니다. 질문을 더 잘 설명해주십시오. 당신이하려는 일을 분명하게 보여주는 좋은 [mcve]를 제공하고, 그 코드가 현재하고있는 일과 그 일을 대신하고 싶은 일, 그리고 알아 내는데 어려움이있는 것을 정확하게 설명하십시오. –

답변

0

개체 비교 대신 이름 비교를 어떻게 사용할 수 있습니까?

당신은 FrameworkElement에 소스를 캐스팅해야합니다

private void OnRoutedEvent(object sender, RoutedEventArgs e) 
{ 
    FrameworkElement fe = sender as FrameworkElement; 
    if (fe != null && fe.Name == "textBoxId") 
    { 
     //... 
    } 
} 

이 생각을하고있는 실제 포인트가 없습니다. 당신은뿐만 아니라 참조를 비교할 수 있습니다

private void OnRoutedEvent(object sender, RoutedEventArgs e) 
{ 
    if(sender == textBoxId) 
     ... 
} 

이름 비교의 의미는 무엇입니까?

나는 당신이 요소를 비교하는 자신을 참조하는 것이 아니라, 두 요소의 이름을 비교하는 것을 의미 같아요.

관련 문제