gpt4 book ai didi

wpf - 如何获得 ContentPresenter 的 child ?

转载 作者:行者123 更新时间:2023-12-03 11:14:49 25 4
gpt4 key购买 nike

使用代码我可以获得内容演示者。我想找到其中的第一个文本框并相应地设置焦点。

Dim obj = TerritoryListViewer.ItemContainerGenerator.ContainerFromItem(myModel)

最佳答案

您可以使用 VisualTreeHelper用于抓取控件树的静态类。
这就是它在 c# 中的实现方式(对不起,我是 VB 阅读障碍))

 T FindFirstChild<T>(FrameworkElement element) where T: FrameworkElement
{
int childrenCount = VisualTreeHelper.GetChildrenCount(element);
var children = new FrameworkElement[childrenCount];

for (int i = 0; i < childrenCount; i++)
{
var child = VisualTreeHelper.GetChild(element, i) as FrameworkElement;
children[i] = child;
if (child is T)
return (T)child;
}

for (int i = 0; i < childrenCount; i++)
if (children[i] != null)
{
var subChild = FindFirstChild<T>(children[i]);
if (subChild != null)
return subChild;
}

return null;
}

关于wpf - 如何获得 ContentPresenter 的 child ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4163754/

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