programing

데이터 바인딩을 통해 WPF 하이퍼링크의 텍스트를 설정하려면 어떻게 해야 합니까?

sourcejob 2023. 4. 14. 21:38
반응형

데이터 바인딩을 통해 WPF 하이퍼링크의 텍스트를 설정하려면 어떻게 해야 합니까?

WPF에서는 객체의 세부사항으로 이동하는 하이퍼링크를 만들고 하이퍼링크의 텍스트가 객체의 이름이 되도록 합니다.지금, 난 이걸 가지고 있어.

<TextBlock><Hyperlink Command="local:MyCommands.ViewDetails" CommandParameter="{Binding}">Object Name</Hyperlink></TextBlock>

그러나 "Object Name"을 객체의 실제 이름에 바인딩해야 합니다.저는 다음과 같은 것을 하고 싶습니다.

<TextBlock><Hyperlink Command="local:MyCommands.ViewDetails" CommandParameter="{Binding}" Text="{Binding Path=Name}"/></TextBlock>

그러나 하이퍼링크 클래스에는 데이터 바인딩에 적합한 텍스트 또는 내용 속성(즉, 종속성 속성)이 없습니다.

좋은 생각 있어요?

생김새는 이상하지만 효과가 있어요.저희 앱에서는 20여 곳에서 하고 있습니다. Hyperlink암묵적으로 구축하다<Run/>에서 텍스트를 "내용"에 넣는 경우.NET 3.5<Run/>구속을 받지 않도록 하기 위해 명시적으로 사용하셔야 합니다.TextBlock.

<TextBlock>
    <Hyperlink Command="local:MyCommands.ViewDetails" CommandParameter="{Binding}">
        <TextBlock Text="{Binding Path=Name}"/>
    </Hyperlink>
</TextBlock>

업데이트: 현재 상태임을 주의해 주십시오.NET 4.0 실행텍스트 속성을 바인딩할 수 있습니다.

<Run Text="{Binding Path=Name}" />

이것은 "페이지"에서 나에게 효과가 있었다.

<TextBlock>
    <Hyperlink NavigateUri="{Binding Path}">
        <TextBlock Text="{Binding Path=Path}" />
    </Hyperlink>
</TextBlock>

위의 Windows Store 앱(및 Windows Phone 8.1 RT 앱)에서는 하이퍼링크버튼을 사용하여 콘텐츠와 NavigateUri 속성을 바인드합니다.

언급URL : https://stackoverflow.com/questions/140996/how-can-i-set-the-text-of-a-wpf-hyperlink-via-data-binding

반응형