Просто попробуйте это вместо:
res.sendFile('public/index1.html' , { root : __dirname});
Это сработало для меня. корень: __ dirname примет адрес, где server.js находится в приведенном выше примере, а затем, чтобы перейти к index1.html (в этом случае), возвращаемый путь - это получить каталог, в котором находится общая папка.
От Bea Stollnitz запись в блоге об этом, попробуйте
TreeViewItem item = (TreeViewItem)(mainTreeList
.ItemContainerGenerator
.ContainerFromIndex(mainTreeList.Items.CurrentPosition));
Вам нужен TreeViewItem, потому что вы собираетесь изменить то, что отображается? Если это так, я бы рекомендовал использовать Style для изменения способа отображения элемента вместо использования кода программной части вместо прямого изменения TreeViewItem. Надеюсь, он должен быть чище.
TreeViewItem item = (TreeViewItem)(mainTreeList
.ItemContainerGenerator
.ContainerFromIndex(mainTreeList.Items.CurrentPosition));
НЕ РАБОТАЕТ (для меня) как mainTreeList.Items.CurrentPosition в древовидной структуре с использованием HierarchicalDataTemplate всегда будет -1.
НИКОГДА НЕ ДЕЛАЕТ ниже, поскольку mainTreeList.Items.CurrentItem в древовидном представлении с использованием HierarchicalDataTemplate всегда будет иметь значение NULL.
TreeViewItem item = (TreeViewItem)mainTreeList
.ItemContainerGenerator
.ContainerFromItem(mainTreeList.Items.CurrentItem);
INSTEAD Мне пришлось установить последний выбранный TreeViewItem в перенаправленном событии TreeViewItem.Selected, которое всплывает в представление в виде дерева (сами TreeViewItem не существуют во время разработки, поскольку мы используем HierarchicalDataTemplate).
Событие может быть записано в XAML следующим образом:
<TreeView TreeViewItem.Selected="TreeViewItemSelected" .../>
Затем последний выбранный TreeViewItem может быть установлен в событии следующим образом:
private void TreeViewItemSelected(object sender, RoutedEventArgs e)
{
TreeViewItem tvi = e.OriginalSource as TreeViewItem;
// set the last tree view item selected variable which may be used elsewhere as there is no other way I have found to obtain the TreeViewItem container (may be null)
this.lastSelectedTreeViewItem = tvi;
...
}