gpt4 book ai didi

c# - Silverlight 3 中的 TreeView 选择问题

转载 作者:太空宇宙 更新时间:2023-11-03 14:32:27 25 4
gpt4 key购买 nike

我在 MainPage 上有一个来自 System.Windows.Controls 的 TreeView 控件。

<controls:TreeView x:Name="Tree" 
SelectedItemChanged="Tree_SelectedItemChanged" />

MainPage 构造函数如下所示:

  public MainPage()
{
InitializeComponent();

for (int i = 0; i < 10; ++i)
Tree.Items.Add(new TreeViewItem() { Header = i.ToString() } );

(Tree.Items[0] as TreeViewItem).IsSelected = true;
}

只需填充 TreeView 并选择第一个元素。

在 Tree_SelectedItemChanged 中,我想对选择项执行一些操作,但 Tree.SelectedItem 具有空值。

我不明白为什么会这样。 Wpf 中的 TreeView 工作正常。

你有什么想法吗?

最佳答案

嗯...这很奇怪!
您可以采取以下措施来绕过此问题:

private void Tree_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
{
object SelectedValue;
if (Tree.SelectedValue == null)
{
foreach (object ti in Tree.Items)
{
if (((TreeViewItem)ti).IsSelected)
{
SelectedValue = ti;
break;
}
}
}
else
{
SelectedValue = Tree.SelectedValue;
}
}

或者您也可以使用 bool 而不是 Tree.SelectedValue == null,例如isFirstLoad 或类似的东西!
奇怪的问题是...

关于c# - Silverlight 3 中的 TreeView 选择问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2282066/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com