gpt4 book ai didi

c# - 以编程方式在加载的松散 xaml 文件中的控件上设置文本

转载 作者:行者123 更新时间:2023-11-30 18:38:11 24 4
gpt4 key购买 nike

我想在加载的松散 xaml 文件中定义的文本框中设置文本。文本框是应用程序的一部分。

StackPanel LooseRoot;

if (fTeleFound == true)
{
try
{
using (System.IO.FileStream fs = new System.IO.FileStream(sXamlFileName, System.IO.FileMode.Open))
{
LooseRoot = (StackPanel)System.Windows.Markup.XamlReader.Load(fs);
}
this.DetailsViewFrame.Children.Add(LooseRoot);
}
catch (ArgumentException ex)
{
// TBD Error xamlfile
return;
}


// set Elements
//foreach (TextBox textBox in LooseRoot.Children as TextBox) // does not work ?
//{
//

//}
}

xaml文件是这样的:

<StackPanel Margin="10" Orientation="Vertical"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

<StackPanel Orientation="Horizontal">
<Label Margin="5,5,0,5">CRCDB=</Label>
<TextBox Margin="0,5,5,5" Name="DetailsviewTB1" Height="20"/>

<Label Margin="10,5,0,5">Infonummer=</Label>
<TextBox Margin="0,5,5,5" Name="DetailsviewTB2" Height="20"/>

<Label Margin="10,5,0,5">Daten=</Label>
<TextBox Margin="0,5,5,5" Name="DetailsviewTB3" Height="20"/>
</StackPanel>

这是用于必须在不编译新应用程序的情况下进行自定义的详细信息 View 。编译时不知道松散的 xaml 文件的数量及其名称。

如何动态设置文本框上的文本?我有一个额外的 xml 文件,可以指定哪些数据来自哪个 TextBox。

最佳答案

你能bind他们?如果是这样,我肯定会推荐这样做,那么你只需要设置 DataContext到包含值的对象。

否则你可以胡闹LogicalVisualTreeHelpers ,递归地寻找具有正确名称的 TextBox。你也可以试试 FindName在包含您的 StackPanel 的一些 FrameworkElement 上。

关于c# - 以编程方式在加载的松散 xaml 文件中的控件上设置文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11804401/

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