我的WPF应用程序中有Treeview
。我需要复制树视图中的元素。
private void copyCmdBinding_Executed(object sender, ExecutedRoutedEventArgs e)
{
// Set text to clip board
TreeView tvi = (TreeView)sender;
Clipboard.SetText(tvi.SelectedValue.ToString());
}
但是tvi.SelectedValue
这里不会返回我在树视图中选择的文本。如何获取我在treeview
中选择的文本值。
更新
<TreeView Grid.Column="0" Grid.Row="0"
HorizontalAlignment="Stretch" Name="treeView1"
SelectedItemChanged="treeView1_SelectedItemChanged">
<TreeView.CommandBindings>
<CommandBinding Command="ApplicationCommands.Copy"
Executed="copyCmdBinding_Executed"
CanExecute="copyCmdBinding_CanExecute"/>
</TreeView.CommandBindings>
//Tree elements
</TreeView>
答案 0 :(得分:1)
试试这个:
((TreeViewItem)tvi.SelectedItem).Header.ToString())
一般来说,这段代码可能很有用:
((T1)tvi.SelectedItem).P.ToString())
// T1: type of property that is binded,
// P: proper method or property that hold the string content
答案 1 :(得分:0)
树中的项目可以是任何类型,SelectedValue
返回SelectedValuePath
的{{1}}指定的属性的值。
因此,请确保在Treeview中设置了SelectedItem
!