2012-03-19 50 views
1

真的很奇怪的问题,简而言之,我正在对文本块中的每个单词进行foreach,如果该单词以例如“@”开头我想使用户名超链接。然而,在大约70%的案例中,它取代了文本,但它并没有成为超链接。TextBlock拒绝~70%的时间来制作一个超链接

部分代码:

private void UserControl_Loaded(object sender, RoutedEventArgs e) 
{ 
    var kaas = Tweet.Split(' '); 
    foreach (string a in kaas) 
    { 
     if (a.StartsWith("@")) 
     { 
      Hyperlink uname = new Hyperlink(); 
      uname.NavigateUri = new Uri("http://twitter.com/" + "xarinatan"); 
      uname.RequestNavigate += new RequestNavigateEventHandler(Hyperlink_RequestNavigateEvent); 
      uname.Inlines.Add("ASDAS"); 
      TweetBlock.Inlines.Add(uname); 
      //TweetBlock.Inlines.Add(Username(a)); 
      TweetBlock.Inlines.Add(" "); 
     } 
    } 
} 

上面的代码变成以“@”开始到“ASDAS”,但未能大部分时间好好其转换为超链接的所有实例,但它有时确实转换。 它完全超越了我,它有时只是起作用,而不是所有的时间,或者根本不起作用。

欢迎您提出任何建议!

编辑:为了澄清,它总是用'ASDAS'代替文本,但在70%的情况下,它不会成为超链接。

+1

出于好奇,你是通过保持统计数字来达到70%的数字,还是你猜测时间? – 2012-03-19 20:42:40

+0

@ErikDietrich是的,估计。在这里,有一个情况的截图http://cedzscreen.fennecweb.net/o3o-19-3-2012_2021-47-59.png这里是超过70%,它是不同的每个屏幕。 – Alex 2012-03-19 20:48:31

+1

只有文本在推文中最后才有效吗? (即在最后用'@ somename'创建一串推文,看看它是否一致。) – 2012-03-19 20:58:32

回答