Действительно очень странная проблема, короче говоря, я делаю foreach для каждого слова в текстовом блоке, если это слово начинается, например, с "@", я хочу сделать из него гиперссылку имени пользователя. Однако примерно в 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", но в большинстве случаев не удается правильно преобразовать его в гиперссылку, ОДНАКО он конвертирует ИНОГДА.
Это полностью вне меня, как это работает только иногда, а не все время или не работает вообще.
Все предложения приветствуются!
edit: чтобы уточнить, он всегда заменяет текст на «ASDAS», но в 70% случаев он не становится гиперссылкой.