我有一個listview綁定客戶信息。我通過在文本框中鍵入來突出顯示列表視圖項目。例如,當我在文本框中輸入「PET」時,它會突出顯示列表視圖項中的「PET」。它的作品和亮點。WPF Listview Textbox Highlight
但之後,當我點擊突出顯示的項目時,它會給出錯誤。但是,當我點擊它的工作列表視圖項目中的空閒位置時,這很有趣。例如,它強調了PETER HEINZ。如果我點擊PETER或HEINZ就會報錯。但是,如果我點擊彼得海因茨之間的空間它的作品。這是什麼錯誤?錯誤消息是
System.InvalidOperationException未處理 Message =「'System.Windows.Documents.Run'不是Visual或Visual3D。」
的源代碼是下面:
private void HighlightText(Object itx)
{
if (itx != null)
{
if (itx is TextBlock)
{
Regex regex = new Regex("(" + textBox1.Text + ")", RegexOptions.IgnoreCase);
TextBlock tb = itx as TextBlock;
if (textBox1.Text.Length == 0)
{
string str = tb.Text;
tb.Inlines.Clear();
tb.Inlines.Add(str);
return;
}
string[] substrings = regex.Split(tb.Text);
tb.Inlines.Clear();
foreach (var item in substrings)
{
if (regex.Match(item).Success)
{
Run runx = new Run(item);
runx.Background = Brushes.LightGray;
tb.Inlines.Add(runx);
}
else
{
tb.Inlines.Add(item);
}
}
return;
}
else
{
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(itx as DependencyObject); i++)
{
HighlightText(VisualTreeHelper.GetChild(itx as DependencyObject, i));
}
}
}
}
你試過調試你的代碼嗎?你檢查了哪一行顯示錯誤? [你有什麼嘗試?](http://whathaveyoutried.com) – Blachshma
「它給錯誤」什麼錯誤?簡單地告訴我們,異常類型可以讓我們更輕鬆地幫助你。 –
@Blachshma我試過調試,看起來像線。但只有當您點擊突出顯示的文本塊時纔會出現錯誤。這就是爲什麼我不能理解它。 – Isi