?s
"Category"
?tvi.Header
"Category"
?s == tvi.Header
false
?s.Equals(tvi.Header)
true
?s == tvi.Header.ToString()
true
Итак, оба s и tvi.Header содержат "Категория", но == возвращает false и Equals() возвращает true.
s определяется как строка, tvi.Header на самом деле является WPF TreeViewItem.Header. Итак, почему они возвращают разные результаты? Я всегда думал, что они были взаимозаменяемы на С#.
Может кто-нибудь объяснить, почему это?