2012-10-19 3 views
3

TextBlock에 인라인을 추가하고 있습니다. Run() 인라인이 작동합니다. 물론 하이퍼 링크()는 Windows 8 (Windows.UI.Xaml.Documents 사용)에서 어떤 이유로 든 사용되지 않으므로 C#을 사용하여 InlineUIContainer에 하이퍼 링크 버튼을 캡슐화하려고합니다. 나는 개념이 건전하다는 것을 안다. 그러나 나의 코드는 실패하고있다.TextBlock에서 HyperLinkButton을 인라인하려고 시도합니다.

"Windows.UI.Xaml.Documents;를 사용하여"줄을 주석 처리하면 두 개의 인라인이 내 ListView (아래의 메서드를 사용)에 표시됩니다.이 줄의 주석 처리를 제거하면 '링크'에 대한 Inlines.Add가 throw됩니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

public TextBlock enrichPostText(anFullPost post) 
    { 
     TextBlock text_block = new TextBlock(); 
     text_block.Inlines.Clear(); 
 var holdText = new Run(); 
     holdText.Text = "Test start >> "; 
     text_block.Inlines.Add(holdText); 

     HyperlinkButton linkButton = new HyperlinkButton(); 
     linkButton.NavigateUri = new Uri("http://www.cones.net"); 
     linkButton.Content = "click me"; 
     linkButton.Name = "_blank"; 

     InlineUIContainer link = new InlineUIContainer(); 
     link.Child = linkButton; 

     text_block.Inlines.Add(link); 

     var holdText2 = new Run(); 
     holdText2.Text = " << end test."; 
     text_block.Inlines.Add(holdText2); 

     return (text_block); 
    } 
+0

참고 : 줄을 주석으로 처리하는 경우 : text_block.Inlines.Add (link); 다른 인라인은 작동하고 ListViewItems를 볼 수 있습니다. –

+0

다음 오류가 발생합니다. WinRT 정보 : E_NETWORK_ERROR –

답변

0

난 그냥 내 RichTextBlockTextBlock A를 변경했는데, 나는 InlineUIContainer를 추가하려고 할 때 또한 ArgumentException가 던져보고있다. 내가 아는 유일한 해결책은 대신 RichTextBlock을 사용하는 것입니다. 지금까지 그것은 내 필요에 부합되었습니다.

관련 문제