问题标签 [xamlwriter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - XamlWriter 在保存 ResourceDictionary 时跳过“x:Name”属性
这是自定义样式:
我将包含此样式的 ResourceDictionary 保存为这样的字符串:
其中 s 是资源字典。问题是当我得到预期的字符串时,它看起来是这样的:
请查看Border.RenderTransform中的TranslateTransform。在 ResourceDictionary 中有 x:Name="translation",但输出字符串中缺少名称。
我在哪里弄错了或者这是一个错误?提前致谢。
xaml - WPF:具有未序列化 XAML 的 ReadOnly 属性的属性
我正在开发一个 C# WPF 应用程序,它使用 Windows 窗体 PropertyGrid 来允许用户查看和更改对象的属性。我希望某些属性可见但已锁定,因此我将它们的 ReadOnly 属性设置为 true。
但是,在项目的其他地方,我们使用 XAML 序列化程序来序列化对象,并发现具有 ReadOnly 属性集的属性正在从序列化中省略。
为了证明这一点:
运行此代码:
给出输出:
显然缺少“b”属性。
这是正确的行为吗?是否可以序列化 ReadOnly 设置为 true 的属性?
c# - 当前上下文中不存在名称“XamlWriter”
我正在使用 .NET 框架 4.5.2 开发通用 Windows 应用程序(在 Windows 10 上)
我正在尝试使用“XamlWriter”和“XamlReader”克隆一个 xaml 对象,但似乎 Visual Studio 没有引用此类。我越来越:
当前上下文中不存在名称“XamlWriter”
我还注意到我的 Visual Studio 没有System.Windows.Markup
命名空间(其中包含“XamlWriter”和“XamlReader”),只有System.Windows.Input
.
我已经搜索了网络(当然还有这里),但找不到任何答案。我会很感激任何线索。
谢谢。
c# - 如何替换 XpsDocumentWriter 中的默认 XamlWriter?
这是一个XamlWriter.Save
非常慢的已知问题(只是谷歌“xamlwriter 慢”)。我编写的应用程序生成 XPS 文档,并且它使用的元素范围有限。因此,我想XamlWriter
用更有效的替换。是否可以替换使用的默认XamlWriter
值XpsDocumentWriter
?
研究
下面是 XpsDocumentWriter 如何序列化为 Xaml。
这就是我写信的方式XpsDocument
:
所以我想做的是改变 VisualsCollator 在序列化为 Xaml 时使用的序列化程序。
VisualsCollator
实际上是一个VisualsToXpsDocument
:
PackageSerializationManager _manager
实际上是一个XpsSerializationManager
:
这是它继承的 PackageSerializationManager:
到目前为止我最接近的非解决方案
我正在考虑继承XpsSerializationManager
并覆盖该SaveAsXaml
方法,但我不确定如何实际覆盖它,因为它不返回值或提供流或任何要写入的对象。即使我这样做了,我也必须使用反射来更改类PackageSerializationManager _manager
中的字段VisualsToXpsDocument
,所以它有点 hacky。
到目前为止,我还没有解决方案。
未完成的潜在 XamlWriter
如果可以替换序列化程序,那么这XamlWriter
是我在此处找到的自定义示例:
xaml - 在运行时生成 xaml 文件(页面)并用 uri 引用它
我正在开发一个基于现代 UI 的 wpf 应用程序,该应用程序有一个 gui 设计器部分,用户可以在其中添加然后拖放/调整大小等控件。控件位置、大小等的属性存储在数据库的表中。用户可以在多个页面中放置控件。
我所拥有的:在应用程序启动时,控件根据页面 ID 定位在页面(xaml 文件)上的画布上。当我编译时,这些页面都在项目中。
我想要什么:我需要一种方法来动态实例化这些页面并能够使用 uri 引用每个页面。
我尝试过的:我尝试创建一个“模板页面”并从那里实例化每个新页面。然后我将控件放在上面。然后我使用 xamlwriter.save 创建一个我希望能够使用 Uri 引用的 xaml 文件。但是当我尝试引用 xaml 文件时失败了。
如果您可以帮助我解决我的问题,或者有更好的方法,请赐教。
最好的问候,弗雷德里克
xaml - 如何将 SoftwareBitmap 图像转换为 cv::Mat 图像?
我正在引用此链接->在 c++/cx 中将 SoftwareBitmap 或 WriteableBitmap 转换为 cv::Mat
但是每次我尝试将其放入代码中时,它都会向我显示此错误...在此处输入图像描述
您可以看到背景突出显示的部分..我在代码中使用了此转换部分....
wpf - 如何保存具有大小、位置和旋转的图像然后恢复它?
在 WPF 中,我有一个图像被拖放到 InkCanvas 上并作为子项添加:
然后通过装饰器,图像被移动和调整大小。然后将其持久化到数据库中:
然后将孩子发送到数据库。数据库中的结果记录显示为:
没有对图像的新位置、大小或旋转的参考——只有它的初始放置点。使用 xmlreader 重新创建图像会将图像恢复到其初始放置点和大小。
(图像源被打包为应用程序资源)。
我怎样才能保留图像的大小、位置和旋转,然后恢复它?
TIA。
wpf - 是否可以让 XamlWriter 保存 StaticResource?
我的问题显示在以下程序中,其中 GeometryModel3D 的材质是从 XAML 中的 StaticResource 设置的。
是否可以让 XamlWriter 保存实际的 StaticResources 而不是已解析的引用(它现在这样做)?如果是这样,我需要做什么?
xml - XamlWriter.Save(object) - 设置根和其他命名空间
我正在通过XamlWriter.Save(object)
. 这按预期工作。
现在的问题是,XamlWriter
根据需要设置命名空间,例如根命名空间xmlns
设置为 my 的命名空间object
。
问题是,我想将 xaml 复制到现有的 xaml 中,其中已经定义了命名空间。它可以工作,因为它XamlWriter
还将命名空间属性添加到生成的字符串中,但我希望我已经存在的前缀将被重用。这可能吗?
示例 XAML:
我稍后通过 XamlWriter.Save 创建 TagBindingBehavior 并将其添加到我的文档中。但它有不同的命名空间。我想从 TagBindingBehavior 中删除“xmlns”属性。
c# - 为什么 XamlWriter 会在某些属性中添加 {}?
我正在保存一个资源字典来Xaml
使用XamlWriter
,我注意到对于string
只有 的属性{p}
,在文本之前XamlWriter
添加了 a {}
(导致{}{p}
)。
为什么会这样?有什么办法可以防止这种情况发生吗?或者至少在使用标准回读时安全地删除它XDocument.Parse()
?
这是我保存它的方法:
编辑
{}
是当文本包含左括号和右括号(如{...}
.
https://docs.microsoft.com/en-us/dotnet/desktop/xaml-services/escape-sequence-markup-extension
现在,剩下的唯一问题是如何安全地从文本中删除这些 scape 序列。我可以简单地进行替换或修剪,还是已经有方法了?