Пример #1
0
        private static bool HyperlinkMatchesUri(string uri, HyperlinkButton link)
        {
            var queryStart = uri.IndexOf('/', Math.Min(uri.Length, 1));

            if (queryStart < 0)
            {
                queryStart = uri.IndexOf('?');
            }

            if (queryStart > 0)
            {
                uri = uri.Substring(0, queryStart);
            }

            if (link.CommandParameter != null &&
                uri.Equals(link.CommandParameter.ToString(), StringComparison.InvariantCultureIgnoreCase))
            {
                return(true);
            }

            var alternativeUris = LinkHighlighter.GetAlternativeUris(link);

            if (alternativeUris != null && alternativeUris.Any(alternative => uri.Equals(alternative, StringComparison.InvariantCultureIgnoreCase)))
            {
                return(true);
            }

            return(false);
        }
Пример #2
0
        private static bool HyperlinkMatchesUri(string uri, HyperlinkButton link)
        {
            if (link.CommandParameter != null &&
                uri.StartsWith(link.CommandParameter.ToString(), StringComparison.InvariantCultureIgnoreCase))
            {
                return(true);
            }

            var alternativeUris = LinkHighlighter.GetAlternativeUris(link);

            if (alternativeUris != null && alternativeUris.Any(alternative => uri.StartsWith(alternative, StringComparison.InvariantCultureIgnoreCase)))
            {
                return(true);
            }

            return(false);
        }