我正在尝试从 DataTemplate 获取我的 SelectedRadioButton。
Wpf Inspector 显示了可视化树:
在代码中:
void menu_StatusGeneratorChanged(object sender, EventArgs e)
{
var status = Menu.Items.ItemContainerGenerator.Status;
if (status == System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
var item = Menu.Items.ItemContainerGenerator.ContainerFromIndex(0);
// item is a ContentPresenter
var control = Tools.FindChild<SelectedRadioButton>(item);
control = Tools.FindAncestor<SelectedRadioButton>(item);
}
}
item
是一个 ContentPresenter,看 Wpf 检查器的图像,我相信从那里我必须能够到达 SelectedRadioButton。该变量control
始终为空。
我在这里想念什么?我使用这些visualtreehelpers。