gpt4 book ai didi

c# - 在代码隐藏中从 XAML 创建控件?

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

我用 XAML 定义了一些东西,比如:

<Path Data="M16.25,11 L0.5,0.5 L32,0.5 z" Fill="#FFF4F4F5" Height="11" Margin="1.542,0.25,18.458,0" Stretch="Fill" Stroke="Black" UseLayoutRounding="False" VerticalAlignment="Top"/>

我可以在代码隐藏中做这样的事情吗:

Path myPath = Path.FromXAML("
<Path Data="M16.25,11 L0.5,0.5 L32,0.5 z" Fill="#FFF4F4F5" Height="11" Margin="1.542,0.25,18.458,0" Stretch="Fill" Stroke="Black" UseLayoutRounding="False" VerticalAlignment="Top"/>");

显然使用适当的转义字符以确保正确解析字符串。

我记得这是可能的,但我不记得具体情况了..

最佳答案

刚弄清楚,使用 XamlReader.Load 效果很好。

我必须对代码做的一个小修改是添加命名空间,因此要转换它:

<Path Data="M16.25,11 L0.5,0.5 L32,0.5 z" Fill="#FFF4F4F5" Height="11" Margin="1.542,0.25,18.458,0" Stretch="Fill" Stroke="Black" UseLayoutRounding="False" VerticalAlignment="Top"/>

要通过 XamlReader.Load 运行,我这样做:

Path p = XamlReader.Load(<Path **xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"**  Data="M16.25,11 L0.5,0.5 L32,0.5 z" Fill="#FFF4F4F5" Height="11" Margin="1.542,0.25,18.458,0" Stretch="Fill" Stroke="Black" UseLayoutRounding="False" VerticalAlignment="Top"/>);

(显然还必须为引号添加转义字符)

关于c# - 在代码隐藏中从 XAML 创建控件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8116739/

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